$GLOBALS
——引用全局做用域中可用的所有变量。html
$GLOBALS
一个包含了所有变量的全局组合数组。变量的名字就是数组的键。(即全部出现过的全局变量,均可经过$GLOBALS获取到)数组
注释: “Superglobal”也称为自动化的全局变量。这就表示其在脚本的全部做用域中都是可用的,不须要在函数或方法中用global $variable;来访问它。
与全部其余超全局变量不一样,$GLOBALS在PHP中老是可用的。
在PHP中,定义在函数体外的全局变量,函数内部是不能直接获取的,因此须要global声明或者$GLOBALS[]来获取。函数
$GLOBALS
和 global
的区别:spa
下面一个简单的例子说明:指针
$a = 1; $b = 2; function Test1(){ echo $a; //输出 :Notice: Undefined variable: a global $a; echo $a; //输出: 1 unset($a); } Test1(); echo $a; // 输出:1 function Test2(){ echo $GLOBALS['a']; //输出: 1 unset($GLOBALS['a']); } Test2(); echo $a;//输出:Notice: Undefined variable: a
$GLOBALS
和 global
的相同点:code
例子:htm
global $a; $a = 1; function Test3(){ echo $a; //输出:Notice: Undefined variable: a } Test3(); $GLOBALS['b'] = 2; function Test4(){ echo $b; //输出:Notice: Undefined variable: b } Test4();