php变量是可以改变本身内容的存储容器,第一次赋值的时候创建。
变量以 $ 符号开头,其后是变量的名称
变量以字母或下划线开头(不能以数字开头)
变量名称只能包含字母、数字、和下划线(A-z、0-9 以及 _)
<?php $var = 'my'; //定义var变量,并且通过赋值号“=”赋值my $Var = 'you'; $Var2 = 'you'; echo "$var, $Var,$Var2"; // 输出 "my, you,you" $Var2 = 'it'; //改变了Var2的值 echo "$var, $Var,$Var2"; // 输出 "my, you,it" $3site = 'yes'; // 非法变量名;以数字开头 $_3site = 'yes'; // 合法变量名;以下划线开头 $i站点is = 'mansikka'; // 合法变量名;可以用中文 ?>
PHP 变量名称对大小写敏感!($y 与 $Y 是两个不同的变量)不能使用内置函数定义(如:$this) |
变量的作用域是脚本中变量可被引用/使用的范围,共有3种
local(局部)
global(全局)
static(静态)
定义位置 | 作用域 | 访问权限 |
---|---|---|
函数外部定义的变量 | global(全局) | 只能函数外访问 |
函数内部定义的变量 | local(局部) | 只能函数内访问 |
在函数外部定义的变量是global(全局)作用域,只能函数外访问,在函数内部定义的变量是local(局部)作用域,只能函数内访问。
<?php $a=1; //global(全局) function ceshi() { $b=2; //local(局部变量) echo $a; //不能输出 echo $b; //输出 2 } ceshi(); echo $a; //输出 1 echo $b; //不能输出 ?>
在函数内部访问全局变量,请用global关键字
<?php $a = 1; function ceshi(){ global $a; $b = 2; echo $a+$b; } ceshi(); //输出3 ?>
当函数调用完后,它的所有变量都会被删除,如果想要某个局部变量不被删除,可以使用static关键字
<?php function ceshi(){ $a = 0; echo $a; $a++; } ceshi(); //输出0 ceshi(); //输出0 ceshi(); //输出0 ?>
<?php function ceshi(){ static $a = 0; echo $a; $a++; } ceshi(); //输出0 ceshi(); //输出1 ceshi(); //输出2 ?>