代碼:
<?php $GLOBALS['test'] = "i am valid.";
function testFun1() { echo "i am in testFun1().<br/>";
echo '$GLOBALS is '.$GLOBALS['test'].'<br/>';
unset($GLOBALS['test']); echo '$GLOBALS is '.$GLOBALS['test'].'<br/>'; }
function testFun2() { echo "i am in testFun2().".'<br/>'; global $test;
$test = "changed"; echo '$GLOBALS is '.$GLOBALS['test'].'<br/>';
unset($test);
echo "global test is ".$test.'<br/>'; echo '$GLOBALS is '.$GLOBALS['test'].'<br/>'; }
testFun1(); testFun2(); ?>
結果:
i am in testFun1(). $GLOBALS is i am valid. $GLOBALS is i am in testFun2(). $GLOBALS is changed global test is $GLOBALS is changed
引用他人的一句話:
也就是說global $var其實就是$var = &$GLOBALS['var']。調用外部變量的一個別名而已。