$a=5;//定义全局变量
$b=6;
function test(){
global $a,$b; //global $a是外部全局变量$a的同名引用。
unset($a); //所以此处unset后只是断掉了一条指向$a所在内存地址的引用
//也就是说在函数内部没有了$a变量
echo 'a='.$a;
echo PHP_EOL;
echo 'b='.$b;
echo PHP_EOL;
}
test();
echo 'a1='.$a;
//printf Notice: (Undefined variable: a in 。。。) a= b=6 a1=5
$a=5;//定义全局变量
$b=6;
function test(){
$GLOBALS['z']=$GLOBALS['a']+$GLOBALS['b']; //$GLOBALS['a']是外部的全局变量本身
//当unset时全局定义的$a一并被unset掉
unset($GLOBALS['a']);
}
test();
echo 'z='.$z; //z=11
echo PHP_EOL;
echo 'a1='.$a; //Notice: Undefined variable: a