PHP 提供了大量的预定义变量。这些变量依赖于运行的服务器的版本和设置,及其它因素,所以并没有详细的说明文档。一些预定义变量在 PHP 以命令行CLI形式运行时并不生效。这些变量有些是关闭的,需要配置php.ini中register_globalsq键来开启(决定是否将EGPCS(Environment,GET,POST,Cookie,Server)变量注册为全局变量。默认是关闭的 )
从 PHP 4.1.0 开始,PHP 提供了一套附加的预定数组,这些数组变量包含了来自 web 服务器(如果可用),运行环境,和用户输入的数据。这些数组非常特别,它们在全局范围内自动生效。因此通常被称为自动全局变量(autoglobals)或者超全局变量(superglobals)。
PHP 中的许多预定义变量都是“超全局的”,这意味着它们在一个脚本的全部作用域中都可用。在函数或方法中无需执行 global $variable; 就可以访问它们。
这些超全局变量是:
$GLOBALS //一个包含了全部变量的全局组合数组。变量的名字就是数组的键。