php基础语法

php如何执行

1, 通过web服务器,调用php进行执行。(Phpweb服务器之间使用sapi进行通信)

2, 作为命令行脚本执行。我们在命令下,直接运行php.exe,此时没有Apache的等web服务器的参与,php自己运行的也可以用于运行某个php脚本:

-f 选项,指明允许的php文件,注意,如果是在命令行下,那么请求相关的资源就不可使用了。

php基础语法_第1张图片

php基本语法、

php标签


1,标准标记

<?php
    echo 'hello';
?>


<script language=”php”>
    echo 'hello';
</script>


2,兼容标记

短标记(默认不开启,需要开启配置 short_open_tag = On)


<?
    echo 'hello';
?>


asp风格(同样需要开启配置,asp_tag = On)


<%
    echo 'hello';
%>


php支持省略结束标记,在php代码最后一段时才支持

语句结束符 ;

行注释//

块注释/* 内容 */

变量

定义:程序的运行过程中,可以发生改变的量(数据),称之为变量

变量名:可由字母数字下划线组成,不能以数字开头,大小写敏感(区分大小写)

建议用下划线分隔法

变量的操作

php的变量可以直接使用,不用声明,而且可以保存任何数据。

删除一个变量

unset()可以删除一个变量

删除一个变量,是应该删除变量和值,包括之间的引用。

但是unset只负责删除名和引用,值的部分是由php核心解释器自动完成度的

那么问题来了,就可能出现变量名消失,但是变量值还在的情况。

变量的赋值

情况1,值传递

php基础语法_第2张图片

上面是复制了值的空间,称为变量之间的值传递

情况2,引用传递

语法上,在赋值时使用&取得引用即可

php基础语法_第3张图片

上面的赋值方式是引用传递,可以理解为一个东西拥有多个名字

如果unset其中一个名字,不影响另外一个使用(上面有提到unset并不能删除值)

可变变量

一个变量的名部分($后面的部分),可以由另外一个变量来充当


$name = 'hello';
$hello = 'php';
echo $$name;//php

可变变量实际使用中已经扩展到可变标识符,在php中几乎所有变量都可以用变量代替,最常见的就是函数标识符


function f(){
	echo 'f';
}
$f_name = 'f';
$f_name();//f



预定义变量


php已经预先定义好的变量,称之为 九大超全局数据变量

$_GET $_POST $_REQUEST $_FIELS $_COOKIE $_SERVER $_SESSION $_ENV $GLOBALS 大小写敏感

$_GET

服务器接收浏览器数据的方法

通过浏览器地址栏发送的请求就是get请求

在php中统一用$_GET接收

$_POST

是接收表单的请求方法

$_REQUEST

$_REQUEST = $_GET+$_POST

如果get和post数据名冲突则默认保留的是post数据

$_SERVER

保存服务器和浏览器的信息

$_FILES

文件上传变量,接收浏览器上传的文件信息

$_COOKIE

保存浏览器缓存

$_ENV

shell的环境信息

$_GLOBALS

超全局作用域


$argv,$argc

在命令行如果接收到get数据呢?(开头说了命名行只能接收get数据)

php基础语法_第4张图片

在脚本内用argv,argc接收数据

$argv保存所有的参数,用0开始(0为路径)

$argc保存所有的参数个数

常量

定义一个固定的值的量(不能更改常量的值和删除)

定义:define('PAI',3.1415);//常量定义通常大写,区分变量和常量

现版本支持const 定义常量    //const PAI = 3.1415;

define('ONE',1,0);第三个参数默认0区分大小写,1则不区分

defined('PAI');//判断常量是否已经定义,已经定义返回true 否则false

get_defined_constants();//返回所有已经定义的常量包括开发者定义和预定义的常量

魔术常量

举例

php基础语法_第5张图片

可变的类似常量的语法叫魔术常量

数据类型

php是一种弱类型语言,一个变量可以存储任意格式的数据,但是数据是有类型之分的。

八种类型:整形,浮点,布尔,字符串,数组,对象,资源,NULL

var_dump();输出数据值和类型

进制

dechex();//10 to 6

decoct();//10 to 8

debin();//10 to 2


你可能感兴趣的:(php基础语法)