,$_SERVER["QUERY_STRING"]
说明:查询(query)的字符串
2,$_SERVER["REQUEST_URI"]
说明:访问此页面所需的URI
3,$_SERVER["SCRIPT_NAME"]
说明:包含当前脚本的路径
4,$_SERVER["PHP_SELF"]
说明:当前正在执行脚本的文件名
实例:
1,http://www.biuuu.com/ (直接打开主页)
结果:
$_SERVER["QUERY_STRING"] = ""
$_SERVER["REQUEST_URI"] = "/"
$_SERVER["SCRIPT_NAME"] = "/index.php"
$_SERVER["PHP_SELF"]
2,http://www.biuuu.com/?p=222 (附带查询)
结果:
$_SERVER["QUERY_STRING"] = "p=222"
$_SERVER["REQUEST_URI"] = "/?p=222"
$_SERVER["SCRIPT_NAME"] = "/index.php"
$_SERVER["PHP_SELF"]
3,http://www.biuuu.com/index.php?p=222&q=biuuu
结果:
$_SERVER["QUERY_STRING"] = "p=222&q=biuuu"
$_SERVER["REQUEST_URI"] = "/index.php?p=222&q=biuuu"
$_SERVER["SCRIPT_NAME"] = "/index.php"
$_SERVER["PHP_SELF"]
$_SERVER["QUERY_STRING"]获取查询语句,实例中可知,获取的是?后面的值
$_SERVER["REQUEST_URI"] 获取http://www.biuuu.com后面的值,包括/
$_SERVER["SCRIPT_NAME"] 获取当前脚本的路径,如:index.php
$_SERVER["PHP_SELF"] 当前正在执行脚本的文件名
当前url:"http://".$_SERVER[''HTTP_HOST''].$_SERVER[''PHP_SELF'']
总结一下,对于QUERY_STRING,REQUEST_URI,SCRIPT_NAME和PHP_SELF,深入了解将有利于我们在$_SERVER函数中正确调用这四个值。通过实例详解$_SERVER函数中QUERY_STRING,REQUEST_URI,SCRIPT_NAME和PHP_SELF掌握四个变量之间的区别。
1.$_SERVER[''HTTP_ACCEPT_LANGUAGE'']//浏览器语言
显示:zh-cn
2.$_SERVER[''REMOTE_ADDR''] //当前用户 IP 。
显示:127.0.0.1
3.$_SERVER[''REMOTE_HOST''] //当前用户主机名
显示:
4$_SERVER[''REQUEST_URI''] //URL
显示:/test.php
5$_SERVER[''REMOTE_PORT''] //端口。
显示:3864
6$_SERVER[''SERVER_NAME''] //服务器主机的名称。
显示:127.0.0.1
7$_SERVER[''PHP_SELF'']//正在执行脚本的文件名
显示:/test.php
8$_SERVER[''argv''] //传递给该脚本的参数。
显示:ARRAY
9$_SERVER[''argc''] //传递给程序的命令行参数的个数。
显示:0
10$_SERVER[''GATEWAY_INTERFACE'']//CGI 规范的版本。
显示: CGI/1.1
11$_SERVER[''SERVER_SOFTWARE''] //服务器标识的字串
显示:Apache/2.0.52 (Win32) PHP/5.2.1
12$_SERVER[''SERVER_PROTOCOL''] //请求页面时通信协议的名称和版本
显示:HTTP/1.1
13$_SERVER[''REQUEST_METHOD'']//访问页面时的请求方法
显示:GET
14$_SERVER[''QUERY_STRING''] //查询(query)的字符串。
显示:
15$_SERVER[''DOCUMENT_ROOT''] //当前运行脚本所在的文档根目录
显示:D:/Program Files/Apache/www
16$_SERVER[''HTTP_ACCEPT''] //当前请求的 Accept: 头部的内容。
显示:**
17----
18----gzip, deflate
19----Keep-Alive
20----10.145.40.150:8080
21----http://10.145.40.150:8080/
22----Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; .NET CLR 2.0.50727)
23----
24----D:/Program Files/Apache/www/text.php
26----8080
27----
Apache/2.0.52 (Win32) PHP/5.2.1 Server at 10.145.40.150 Port 8080
28----
29----/text.php
30----
31----
32----
<?php
echo ''documentroot:''.$_SERVER[''DOCUMENT_ROOT''].''<br>''; //根目录,在apache的配置文件里定义:httpd.conf 比如:DocumentRoot "D:/work/php_root"
echo ''httphost:''.$_SERVER[''HTTP_HOST''].''<br>''; //域名,比如:localhost
echo ''phpself:''.$_SERVER[''PHP_SELF''].''<br>''; // 从根目录到文件本身的路径
echo ''script filename''.$_SERVER[''SCRIPT_FILENAME''].''<br>''; //documentroot+phpself
echo ''request uri''.$_SERVER[''REQUEST_URI''].''<br>''; //从根目录开始所有的URL字符串,包括问号之后的字符
echo ''request method:''.$_SERVER[''REQUEST_METHOD''].''<br>''; //请求的方法
echo ''name:''.$_REQUEST[''name''].''<br>''; //请求参数的值
?>
documentroot:F:\php\webs\210_phpTest
httphost:localhost:210
phpself:/ext/xtest/test.php
script filenameF:\php\webs\210_phpTest\ext\xtest\test.php
request uri/ext/xtest/test.php
request method:GET