错误或黑客?$GLOBALS
2022-08-30 23:40:11
$GLOBALS["items"] = array('one', 'two', 'three', 'four', 'five' ,'six', 'seven');
$alter = &$GLOBALS["items"]; // Comment this line
foreach($GLOBALS["items"] as $item) {
echo get_item_id();
}
function get_item_id(){
var_dump(key($GLOBALS["items"]));
}
检查此代码的输出,第二行带有注释和未注释。我的结果(PHP 5.3.0)。带第二行
int(1) int(2) int(3) int(4) int(5) int(6) NULL
不带第二行:
int(1) int(1) int(1) int(1) int(1) int(1) int(1)
为什么结果这么奇怪?