我知道最好使用引用传递而不是这样做,但我想知道为什么这个代码(代码1)工作正常但另一个代码(代码2)不会?
代码1:
[Value]
代码2:
<?php
$var = 5;
function unset_var() {
unset($GLOBALS['var']);
}
unset_var();
echo $var; //Notice: Undefined variable: var
?>
答案 0 :(得分:2)
你的第二个代码有一个创建一个新变量的函数,你要取消该变量,而不是函数外的变量。您的第一个代码仅操作$ GLOBALS数组。
首先,你应该避免考虑全局变量......