几个常用的(PHP预定义变量)以及(如何访问预定义变量)

REQUEST_METHOD: 访问页面时的请求方法.例如: "GET"、"HEAD"、"POST"、"PUT".
REQUEST_TIME: 请求开始时的时间戳.
QUERY_STRING: 查询(query)的字符串(URL中第一个问号?之后的内容).
DOCUMENT_ROOT: 当前运行脚本所在的文档根目录.在服务器配置文件中定义.
HTTP_ACCEPT: 当前请求的Accept头信息的内容.
HTTP_ACCEPT_CHARSET: 当前请求的Accept-Charset头信息的内容.
SERVER_PROTOCOL: 请求页面时通信协议的和版本,例如:Http/1.0;
REQUEST_METHOD: 访问页面时的请求方法.例如:"GET"、"HEAD"、"POST"、"PUT".

//-----------下面介绍访问预定义变量的方法--------------------------------------

1. 在PHP中可以通过3种方式来访问这些预定义变量.最原始的访问方法就是直接在全局变量前面加美元符号来访问,如下所示;
$REQUERST_METHOD
但是在PHP5中这种直接的访问方式已经被屏蔽了,所以要想通过这种方法访问预定义变量,必须修改php.ini的设置. (将"register_globals=OFF"改成"register_globals=ON",然后重启Apache服务器).

例:使用$预定义变量

<?php
echo '提交方法为:'.$REQUERT_METHOD;
echo '<br>网络协议为:'.$SERVER_PROTOCOL;
?>
输出结果:
     提交方法为:GET
     网络协议为:HTTP/1.1
这种方法容易给编程人员带来一些不必要的麻烦,因此PHP默认是不支持这种访问方式的.当然读者应该掌握和了解,尤其是阅读以前版本的PHP源码的时候.

//----------------------------------------------------------------------------
2. 用$HTTP_*_VARS方法访问预定义变量.
$HTTP_*_VARS是一种长格式的访问方式.其中"*"根据不同的变量使用不同的内容.通常这些预定义变量可以分成以下几种.
服务器变量: 系统的服务设置变量(访问方式$HTTP_SERVER_VARS).
环境变量: 系统的环境设置变量(访问方式$HTTP_ENV_VARS).
Cookies变量: Cookies变量(访问方式$HTTP_Cookies_VARS).
GET变量: 通过GET方法请求变量(访问方式$HTTP_GET_VARS).
POST变量: 通过POST方法请求变量(访问方式$HTTP_POST_VARS).
REQUEST变量: 通过表单请求变量(访问方式$HTTP_REQUEST_VARS).
Session变量: 会话控制变量(访问方式$HTTP_SESSION_VARS).
文件上专变量: 用户将文件传送到服务器的变量(访问方式$HTTP_POST_VARS).
在 PHP4.0之后,这种访问方式就被禁止了,因此为了启用这种访问方式,必须修改php.ini文件的设置.
(将"register_long_arrays=OFF" 改成"register_long_arrays=ON",然后重启Apache服务器). 

例:
  <?php
echo '主机名称:'.$HTTP_SERVER_VARS['HTTP_HOST'];
echo '<br>服务器根路径:'.$HTTP_SERVER_VARS['DOCUMENT_ROOT'];
?>

输出结果:
 主机名称:localhost
服务器根路径:D:/AppServ/www
//-----------------------------------------------------------------------------

3. 超全局变量访问预定义变量.(PHP推荐的访问方式)
在PHP4之后,采用了一种新的方式来访问预定义变量.系统提供了一些定义好的超全局变量数组,用户可以直接调用这些数组进行访问.
$GLOBALS: 包含一个引用指向每个当前脚本的全局范围内有效的变量.该数组的键名为全局变量的名称.
$_SERVER: 变量由Web服务器设定或者直接与当前脚本的执行环境相关联.类似于$HTTP_SERVER_VARS数组.
$_GET: 经由URL请求提交至脚本的变量.类似于$HTTP_GET_VARS数组.
$_PSOT: 经由HTTP POST方法提交至脚本的变量.类似于$HTTP_POST_VARS数组.
$_COOKIE: 经由HTTP Cookies方法提交至脚本的变量.类似于$HTTP_COOKIE_VARS数组.
$_FILES: 经由HTTP FOST文件上传而提交至脚本的变量.类似于$HTTP_POST_FILES数组.
$_ENV: 执行环境提交至脚本的变量.类似于$HTTP_ENV_VARS数组.
$_REQUEST: 经由GET、POST、COOKIE机制提交至脚本的变量.因此该数组并不值得信任.所有包含在该数组中的变量的存在与否以及变量的顺序均按照 php.ini中的varables_ords配置指示来定义.
$_SESSION: 当前注册给脚本会话的变量.类似于$HTTP_SESSION_VARS数组.

例:
<?php
echo '当前执行脚本文件:'.$_SERVER['PHP_SELF'];
echo '<br>当前执行脚本文件绝对路径:'.$_SERVER['scrīpt_FILENAME'];
?>

输出结果:
当前执行脚本文件:/Test/heredoc.php
当前执行脚本文件绝对路径:D:/AppServ/www/Test/heredoc.php

全部脚印 不留脚印 留下脚印:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值