$GLOBALS[‘var’]是外部的全局变量本身;global $var是外部$var的同名引用或者指针。
0x00 代码演示
1 |
|
0x01 结论
上述代码最终的打印结果只打印了“2”。test1中unset了$var1,因此外部也访问不到,而test2中unset的只是$var2的同名引用,所以外部的变量还存在,这说明了$GLOBALS变量和global关键字两者的机制还是不同的。
sidfate's blog
$GLOBALS[‘var’]是外部的全局变量本身;global $var是外部$var的同名引用或者指针。
1 | <?php |
上述代码最终的打印结果只打印了“2”。test1中unset了$var1,因此外部也访问不到,而test2中unset的只是$var2的同名引用,所以外部的变量还存在,这说明了$GLOBALS变量和global关键字两者的机制还是不同的。