$_SERVER获取URL地址函数的区别

超全局变量$_SERVER可以存储当前服务器信息,其中有几个值用于获取URL的链接如$_SERVER["QUERY_STRING"],

$_SERVER["REQUEST_URI"],

$_SERVER["SCRIPT_NAME"] ,

$_SERVER["PHP_SELF"]

以上4个变量特别容易混淆,以下通过实例详解$_SERVER函数中 QUERY_STRING,

REQUEST_URI,

SCRIPT_NAME,

PHP_SELF

变量区别,掌握这四者之间的关系,便于在实际应用中正确获 取所需要的值,供参考。

1,$_SERVER["QUERY_STRING"]
说明:查询RUL的字符串

2,$_SERVER["REQUEST_URI"]
说明:访问此页面所需的URI

3,$_SERVER["SCRIPT_NAME"]
说明:包含当前使用的脚本路径

4,$_SERVER["PHP_SELF"]
说明:当前正在执行脚本的文件名

实例:
1,http://www.o135.com/ (直接打开主页)
结果:
$_SERVER["QUERY_STRING"] = “”
$_SERVER["REQUEST_URI"]  = “/”
$_SERVER["SCRIPT_NAME"]  = “/index.php”
$_SERVER["PHP_SELF"]     = “/index.php”

2,http://www.o135.com/?p=319 (附带URL查询)
结果:
$_SERVER["QUERY_STRING"] = “p=319″
$_SERVER["REQUEST_URI"]  = “/?p=319″
$_SERVER["SCRIPT_NAME"]  = “/index.php”
$_SERVER["PHP_SELF"]     = “/index.php”

3,http://www.o135.com/qwe/index.php?p=319&q=o135
结果:
$_SERVER["QUERY_STRING"] = “p=319&q=o135″
$_SERVER["REQUEST_URI"]  = “/qwe/index.php?p=319&q=o135″

$_SERVER["SCRIPT_NAME"]  = “/qwe/index.php”
$_SERVER["PHP_SELF"]     = “qwe//index.php”

$_SERVER["QUERY_STRING"] 获取查询语句,实例中可知,获取的是?后面的所有查询值
$_SERVER["REQUEST_URI"] 获取域名(http://www.o135.com)后面的所有查询值,同时包括/
$_SERVER["SCRIPT_NAME"] 获取当前脚本的路径,如:/qwe//index.php
$_SERVER["PHP_SELF"] 当前正在执行脚本的文件名

总结一下,对于

QUERY_STRING,

REQUEST_URI,

SCRIPT_NAME,

PHP_SELF,

深入了解将有利于我们 在$_SERVER函数中正确调用这四个值。通过实例详解$_SERVER函数中 QUERY_STRING,REQUEST_URI,SCRIPT_NAME和PHP_SELF掌握四个变量之间的区别,在开发的过程中,经常可以用到。


你可能感兴趣的:(服务器,信息)