起步 - 超全局变量

  • 作者:KK

  • 发表日期:2016.3.20


在运行PHP的时候,PHP引擎就已经为我们预先提供了一些全局变量,而且在任何地方都能使用这些变量,不需要添加global关键字声明,因此我们称它为超全局变量

这些超全局变量都是数组,分别是$_GET,$_POST,$_SERVER等,我这里不全部列举,先试下以下代码:

echo '$_GET数组';
print_r($_GET);
echo '<br/><br/><br/>';

echo '$_POST数组';
print_r($_POST);
echo '<br/><br/><br/>';

echo '$_SERVER数组';
print_r($_SERVER);

运行这些代码后你会发现$_GET和$_POST数组都是空的,只有$_SERVER数组是有内容的

好不管它们是不是空数组,至少它们是存在的数组是吧?不然你试下print_r($xxxx)这样一个不存在的变量,就会提示错误:Undefined variable...(未定义的变量)

比如$_SERVER['HTTP_USER_AGENT']表示使用的浏览器信息,你使用不同的浏览器来访问时,这个数组键值就会有不同的显示


在任何地方都能使用

下面代码没有使用global关键字都能调用$_SERVER数组

function a(){
	print_r($_SERVER); //没有声明global,直接输出
}

a();

其它超全局变量及其相关的键值是什么意思,我暂时就不解释了,到具体知识点的时候我会讲的,反正一般开发过程中最经常用的就是$_GET,$_POST,$_SERVER这三个超全局变量