PHP中预定义的超全局数组
我们先来了解一下什么是超全局数组:
自动全局变量----超全局数组
1.包含了来自web服务器,客户端,运行环境和用户输入的数据
2.这些数组是特别的
3.全局范围内自动生效,都可以直接使用这些数组,前面无需加global
4.用户不能自定义这些数组
接下来我们看看有哪些超全局数组:
$_GET:由URL请求提交至脚本的变量
$_POST:由HTTP POST 方法提交到脚本的变量
$_REQUEST:由GET、POST、COOKIE机制提交到脚本的变量,因此该数组并不值得信任,尽量不去使用
$_FILES:由HTTP POST 文件上传而提交至脚本
$_COOKIE:会话机制
$_SEESION:会话机制(这两个先不细讲,涉及内容较多)
$_ENV:执行环境提交至脚本的变量
$_SERVER:由web服务器设定的,或直接和当前脚本的执行环境相关联
$GLOBALS:只要是当前脚本有效的变量都在这里,数组键名为全局变量的名称
首先来看看$_GET:
只要是当前脚本有效的变量都在这里
在study.php写个链接跳转到study1.php
ps:传值第一个用“?”,往后的用“&”拼接
在study1.php里直接用$_GET获取URL里面的属性的值
我们可以看到已经获取到值了。
这是用数组的形式输出
接下来是$_POST:
同样的在study.php里写个form表单,这里method是post(默认是get)
我们在study1.php里用$_POST接收 以数组形式输出
接下来是$_REQUEST:
在上面我们说过尽量不使用它,因为不论是post还是get都可以访问,结果与上面相同,在这里就不再说了。
然后是$_ENV:
这段代码会输出你当前环境的一些属性,具体的你们可以在自己电脑上测试一下。
OS是其中一个属性
和$_EVN差不多的$_SERVER:
和当前脚本的执行环境相关的一些属性,同样的可以在自己电脑测试。
最后一个$GLOBALS:
只要是当前脚本有效的变量都在这里