上代码,方法定义为静态变量
<?php
function &test(){
static $c=222;
return $c;
}
$a=&test();
echo $a;
echo "---------------------------";
$a=4141;
$a=test();
echo $a; ?>
结果:
222---------------------------4141
方法中不定义静态的
<?php
function &test(){
$c=222;
return $c;
}
$a=&test();
echo $a;
echo "---------------------------";
$a=4141;
$a=test();
echo $a; ?>
结果
222---------------------------222
静态是全局的,所以$a改变值将方法中的$c覆盖;第二次是局部变量,所以无法改变。