变量分为
1,变量间的赋值
$a="a";
$b=$a; //变量a初始化b,变量使用不同的内存空间,互不影响。
$a="b";
echo $b;
结果
a
2,引用赋值
$a="a";
$b=&$a; //多一个&变成引用赋值。这就和java一样了.
$a="b";
echo $b;
结果
b
变量的作用域
局部变量
全局变量,在函数外声明的,作用域整个PHP文件,不能直接在用户自定义的函数内部使用,想要使用需要global关键字。
<?php
$a="ok";
function run(){
global $a; //相当于在函数内部声明了一遍,不过是指向全局的那个。
echo $a;
}
run();
?>
静态变量,能在函数调用结束后仍然保留内存。用static声明。
<?php
function run(){
static $a=1; //此处是声明static,是在初始化,故只执行一次。函数结束后任然被保留。
$a+=1;
echo $a.'<br/>';
}
for($i=0;$i<10;$i++)
run();
?>
结果
2
3
4
5
6
7
8
9
10
11
可变变量 允许动态改变变量的变量名,工作原理该变量的名称由另外的一个变量值来确定。
<?php
$a='b';
$b='okok';
echo $$a; //变量的名字是$a了,变量的名字就是个变化的变量.
?>
结果
okok
预定义变量