- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章超全局变量
第三章 超全局变量
课程目标:
掌握超全局变量( superglobals )的用法
3.1 超全局变量简介
PHP 提供了一套附加的预定数组,这些数组变量包含了来自 web 服务器(如果可用),运行环境,和用户输入的数据。这些数组非常特别,它们在全局范围内自动生效,因此通常被称为自动全局变量(autoglobals)或者超全局变量(superglobals )
PHP 超全局变量
1)$GLOBALS
包含一个引用指向每个当前脚本的全局范围内有效的变量。该数组的键名为全局变量的名称。
2)$_SERVER
变量由 web 服务器设定或者直接与当前脚本的执行环境相关联。
?php echo $_SERVER[SERVER_PORT ]; ?
服务器所使用的端口。默认为“80”。
$_SERVER 只是 PHP 自动全局化的变量之一。可以查阅“保留变量” 来查看这些变量的列表,或者也可以通过phpinfo() 函数的输出来查看
3.1 超全局变量简介
3) $_GET: 经由 URL 请求提交至脚本的变量。
3) $_POST:经由 HTTP POST 方法提交至脚本的变量。
例:
form action=action.php method=post p姓名: input type=text name=name //p p年龄: input type=text name=age //p pinput type=submit //p /form
你好,?php echo $_POST[‘name’]; ?。
你 ?php echo $_POST[age]; ? 岁了。
5) $_COOKIE
经由 HTTP Cookies 方法提交至脚本的变量
6)$_FILES
经由 HTTP POST 文件上传而提交至脚本的变量。
3.1 超全局变量简介
7) $_ENV
执行环境提交至脚本的变量。
8)$_REQUEST
经由 GET,POST 和 COOKIE 机制提交至脚本的变量,因此该数组并不值得信任。所有包含在该数组中的变量的存在与否以及变量的顺序均按照 php.ini 中的 variables_order 配置指示来定义。此数组在 PHP 3.1.0 之前没有直接对应的版本。
9)$_SESSION
当前注册给脚本会话的变量。
3.2 $GLOBALS变量
全局范围内访问变量的方法:
global 关键字;
PHP 自定义 $GLOBALS 数组
使用global关键字
?php$a = 1; /* 全局范围 */function Test(){ $a+=2;
echo $a; /* 引用局部变量 */}Test();
echo $a;?
3.2 $GLOBALS变量
使用 global 后:
?php$a = 1; /* 全局范围 */function Test() { global $a;//申明全局变量$a;
$a+=2;
echo $a; /* 引用全局变量 */ }Test();
echo $a;?
在函数中申明了全局变量 $a ,任何变量的所有引用变量都会指向到全局变量。
3.2 $GLOBALS变量
在全局范围内访问变量的第二个办法,是用特殊的 PHP 自定义 $GLOBALS 数组。前面的例子可以写成:
?php$a = 1; /* 全局范围 */function Test() { $GLOBALS[“a”]=$GLOBALS[“a”]+2;
echo $GLOBALS[“a”]; /* 引用全局变量 */ }Test();
echo $a;?
在 $GLOBALS 数组中,每一个变量为一个元素,键名对应变量名,值对应变量的内容。$GLOBALS 之所以在全局范围内存在,是因为 $GLOBALS 是一个超全局变量。
3.3 服务器变量:$_SERVER
$_SERVER 是一个包含诸如头信息(header)、路径(path)和脚本位置(script locations)的数组。数组的实体由 web 服务器创建。不能保证所有的服务器都能产生所有的信息;服务器可能忽略了一些信息,或者产生了一些未在下面列出的新的信息
3.3 服务器变量:$_SERVER
PHP_SELF
当前正在执行脚本的文件名,与 document root 相关。举例来说,在 URL 地址为 /test/foo.php 的脚本中使用 $_SERVER[P
原创力文档


文档评论(0)