php预定义变量~$_SERVER[‘QUERY_STRING‘]
php $_SERVER[‘QUERY_STRING‘]函数
• 简介$_SERVER函数( 获取当前服务器信息)
预定义变量就是系统自己定义好的变量,直接使用就可以。预定义变量都是以数组的形式存在的(也就是说我们根据 [ ] 中的不同参数,选择我们要的到的信息)。PHP的预定义有很多种,包括我们的get,post等等,都是php的预定义变量。
$_SERVER是
•示例:
1,http://www.boke.com/
结果:
$_SERVER["QUERY_STRING"] = “”
$_SERVER["REQUEST_URI"] = “/”
$_SERVER["SCRIPT_NAME"] = “/index.php”
$_SERVER["PHP_SELF"] = “/index.php”
2,http://www.boke.com/scr.php/?a=bbb(附带查询)
结果:
$_SERVER["QUERY_STRING"] = “a=bbb″
$_SERVER["REQUEST_URI"] = “/?a=bbb″
$_SERVER["SCRIPT_NAME"] = “/src.php”
$_SERVER["PHP_SELF"] = “/src.php”
3,http://www.boke.com/scr.php/?x=111&y=222
$_SERVER["QUERY_STRING"] = “x=111&y=222”
$_SERVER["REQUEST_URI"] = “/scr.php/?x=111&y=222”
$_SERVER["SCRIPT_NAME"] = “/src.php”
$_SERVER["PHP_SELF"] = “/src.php”
•总结:
$_SERVER["QUERY_STRING"]获取查询语句,获取的是?后面的值
$_SERVER["REQUEST_URI"] 获取 http://www.boke.com 后面的值,包括/
$_SERVER["SCRIPT_NAME"] 获取当前脚本的路径,如:/src.php (如果网址是http://www.boke.com/aaa/src.php ,最后检索的内容就是 /aaa/src.php)
$_SERVER["PHP_SELF"] 当前正在执行脚本的文件名
数组元素 | 说明 |
$_SERVER['PHP_SELF'] | 当前执行脚本的文件名,与 document root 有关。例如,在地址为 http://c.biancheng.net/test.php/foo.bar 的脚本中使用 $_SERVER['PHP_SELF'] 将得到 /test.php/foo.bar |
$_SERVER['SERVER_ADDR'] | 当前运行脚本所在服务器的 IP 地址 |
$_SERVER['SERVER_NAME'] | 当前运行脚本所在服务器的主机名。如果脚本运行于虚拟主机中,该名称就由那个虚拟主机所设置的值决定 |
$_SERVER['SERVER_PROTOCOL'] | 请求页面时通信协议的名称和版本。例如,“HTTP/1.0” |
$_SERVER['REQUEST_METHOD'] | 访问页面使用的请求方法。例如“GET”“HEAD”“POST”“PUT” |
$_SERVER['DOCUMENT_ROOT'] | 当前运行脚本所在的文档根目录。在服务器配置文件中定义 |
$_SERVER['HTTP_ACCEPT_LANGUAGE'] | 当前请求头中 Accept-Language: 项的内容(如果存在)。例如,“en” |
$_SERVER['REMOVE_ADDR'] | 浏览当前页面的用户 IP 地址(客户端ip),注意与 $_SERVE R['SERVER_ADDR'] 的区别 |
$_SERVER['SCRIPT_FILENAME'] | 当前执行脚本的绝对路径 |
$_SERVER['SCRIPT_NAME'] | 包含当前脚本的路径 |
$_SERVER['QUERY_STRING'] | 查询(query)的字符串。 |
$_SERVER['PATH_INFO'] | 包含由客户端提供的、跟在真实脚本名称之后并且在查询语句(query string)之前的路径信息(如果存在)。例如,当前脚本是通过 URL http://c.biancheng.net/php/path_info.php/some/stuff?foo=bar 被访问的,那么 $_SERVER['PATH_INFO'] 将包含 /some/stuff |
$_SERVES[HTTP_X_FORWARDED_FOR] | 在PHP 中使用 $_SERVER["REMOTE_ADDR"] 来取得客户端的 IP地址,但如果客户端是使用代理服务器来访问,那取到的就是代理服务器的 IP 地址,而不是真正的客户端 IP 地址。
要想透过代理服务器取得客户端的真实 IP 地址,就要使用$_SER VER["HTTP_X_FORWARDED_FOR"] 来读取。 |
本文来自博客园,作者:柳~,转载请注明原文链接:https://www.cnblogs.com/zhiliu/p/16474321.html