php中的$_SERVER数组变量

php $_SERVER当前完整url的写法





‘http://’.$_SERVER

['HTTP_HOST'].$_SERVER['PHP_SELF'].’?’.$_SERVER['QUERY_STRING'];

Array
(
    [DOCUMENT_ROOT] => /home6/twosixe2/public_html/king
    [GATEWAY_INTERFACE] => CGI/1.1
    [HTTP_ACCEPT] => application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
    [HTTP_ACCEPT_CHARSET] => GBK,utf-8;q=0.7,*;q=0.3
    [HTTP_ACCEPT_ENCODING] => gzip,deflate,sdch
    [HTTP_ACCEPT_LANGUAGE] => zh-CN,zh;q=0.8
    [HTTP_CACHE_CONTROL] => max-age=0
    [HTTP_CONNECTION] => keep-alive
    [HTTP_COOKIE] => __utmz=238801119.1279444463.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utma=238801119.1916031422.1279444463.1279444463.1279444463.1; rtime=0; ltime=1279444853740; cnzz_eid=20179994-1279444456-
    [HTTP_HOST] => <a href="http://www.onexin.net" rel="nofollow">http://www.onexin.net</a>
    [HTTP_USER_AGENT] => Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.3 (KHTML, like Gecko) Chrome/6.0.458.1 Safari/534.3
    [PATH] => /bin:/usr/bin
    [QUERY_STRING] =>
    [REDIRECT_STATUS] => 200
    [REMOTE_ADDR] => 113.92.112.126
    [REMOTE_PORT] => 1856
    [REQUEST_METHOD] => GET
    [REQUEST_URI] => /php_server.php
    [SCRIPT_FILENAME] => /home6/twosixe2/public_html/king/php_server.php
    [SCRIPT_NAME] => /php_server.php
    [SERVER_ADDR] => 66.147.255.229
    [SERVER_ADMIN] => <a href="mailto:[email protected]">[email protected]</a>
    [SERVER_NAME] => <a href="http://www.onexin.net" rel="nofollow">http://www.onexin.net</a>
    [SERVER_PORT] => 80
    [SERVER_PROTOCOL] => HTTP/1.1
    [SERVER_SIGNATURE] =>
Apache/2.2.16 (CentOS) mod_ssl/2.2.16 0.9.8l DAV/2 mod_fcgid/2.3.5 mod_auth_passthrough/2.1 FrontPage/5.0.2.2635 Server at <a href="http://www.onexin.net" rel="nofollow">http://www.onexin.net</a> Port 80

    [SERVER_SOFTWARE] => Apache/2.2.16 (CentOS) mod_ssl/2.2.16 0.9.8l DAV/2 mod_fcgid/2.3.5 mod_auth_passthrough/2.1 FrontPage/5.0.2.2635
    [UNIQUE_ID] => TH@0RkKT8LMAAEZDtH0AAABA
    [file_gzip] => /ramdisk/cpud/status
    [PHP_SELF] => /php_server.php
    [REQUEST_TIME] => 1283437639
    [argv] => Array
        (
        )

    [argc] => 0
)



1,$_SERVER[&quot;QUERY_STRING&quot;]

说明:查询(query)的字符串



2,$_SERVER[&quot;REQUEST_URI&quot;]

说明:访问此页面所需的URI



3,$_SERVER[&quot;SCRIPT_NAME&quot;]

说明:包含当前脚本的路径



4,$_SERVER[&quot;PHP_SELF&quot;]

说明:当前正在执行脚本的文件名



实例:

1,http://www.biuuu.com/ (直接打开主页)

结果:

$_SERVER[&quot;QUERY_STRING&quot;] = “”

$_SERVER[&quot;REQUEST_URI&quot;] = “/”

$_SERVER[&quot;SCRIPT_NAME&quot;] = “/index.php”

$_SERVER[&quot;PHP_SELF&quot;] = “/index.php”



2,http://www.biuuu.com/?p=222 (附带查询)

结果:

$_SERVER[&quot;QUERY_STRING&quot;] = “p=222″

$_SERVER[&quot;REQUEST_URI&quot;] = “/?p=222″

$_SERVER[&quot;SCRIPT_NAME&quot;] = “/index.php”

$_SERVER[&quot;PHP_SELF&quot;] = “/index.php”



3,http://www.biuuu.com/index.php?p=222&amp;q=biuuu

结果:

$_SERVER[&quot;QUERY_STRING&quot;] = “p=222&amp;q=biuuu”

$_SERVER[&quot;REQUEST_URI&quot;] = “/index.php?p=222&amp;q=biuuu”

$_SERVER[&quot;SCRIPT_NAME&quot;] = “/index.php”

$_SERVER[&quot;PHP_SELF&quot;] = “/index.php”



$_SERVER[&quot;QUERY_STRING&quot;]获取查询语句,实例中可知,获取的是?后面的值

$_SERVER[&quot;REQUEST_URI&quot;] 获取http://www.biuuu.com后面的值,包括/

$_SERVER[&quot;SCRIPT_NAME&quot;] 获取当前脚本的路径,如:index.php

$_SERVER[&quot;PHP_SELF&quot;] 当前正在执行脚本的文件名



当前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、$_SERVER['HTTP_ACCEPT_CHARSET'] //当前请求的 Accept-Charset: 头部的内容。



显示:



18、$_SERVER['HTTP_ACCEPT_ENCODING'] //当前请求的 Accept-Encoding: 头部的内容



显示:gzip,deflate



19、$_SERVER['HTTP_CONNECTION'] //当前请求的 Connection: 头部的内容。例如:“Keep-Alive”。



显示:Keep-Alive



20、$_SERVER['HTTP_HOST'] //当前请求的 Host: 头部的内容。



显示:127.0.0.1:8080



21、$_SERVER['HTTP_REFERER'] //链接到当前页面的前一页面的 URL 地址。



显示:http://127.0.0.1:8080/



22、$_SERVER['HTTP_USER_AGENT'] //当前请求的 User_Agent: 头部的内容。



显示: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、$_SERVER['HTTPS']//如果通过https访问,则被设为一个非空的值(on),否则返回off



显示:



24、$_SERVER['SCRIPT_FILENAME'] #当前执行脚本的绝对路径名。



显示:D:/Program Files/Apache/www/test.php



25、$_SERVER['SERVER_ADMIN'] #管理员信息



显示:[email protected]



26、$_SERVER['SERVER_PORT'] #服务器所使用的端口



显示:8080



27、$_SERVER['SERVER_SIGNATURE'] #包含服务器版本和虚拟主机名的字符串。



显示:Apache/2.0.52 (Win32) PHP/5.2.1 Server at 10.145.40.150 Port 8080



28、$_SERVER['PATH_TRANSLATED'] #当前脚本所在文件系统(不是文档根目录)的基本路径。



显示:



29、$_SERVER['SCRIPT_NAME'] #包含当前脚本的路径。这在页面需要指向自己时非常有用。



显示 :/test.php



30、$_SERVER['PHP_AUTH_USER'] #当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的用户名。



显示:



31、$_SERVER['PHP_AUTH_PW'] #当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的密码。



显示:



32、$_SERVER['AUTH_TYPE'] #当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是认证的类型

 

你可能感兴趣的:(apache,PHP,.net,centos,脚本)