php获取网站域名 及 SERVER 相关变量

//获取当前域名
echo $_SERVER['HTTP_HOST'];
echo $_SERVER['SERVER_NAME'];
//获取当前ip
echo $_SERVER['SERVER_ADDR'];
//获取当前服务器标识的字串,在响应请求时的头部中给出
echo $_SERVER['SERVER_SOFTWARE'];
//获取请求页面时通信协议的名称和版本。例如,“HTTP/1.0”。
echo $_SERVER['SERVER_PROTOCOL'];
//当前正在执行脚本的文件名
echo $_SERVER['PHP_SELF']; 
//获取来源网址,即点击来到本页的上页网址  
echo $_SERVER['HTTP_REFERER'];
//获取当前域名的后缀 
echo $_SERVER['REQUEST_URI']; 
//获取当前文件的物理路径  
echo dirname(__FILE__); 
//获取当前文件的上一级物理路径

其他的可以在php SERVER获取

判断浏览器类型:

<?php
if(strpos($_SERVER["HTTP_USER_AGENT"],"MSIE 8.0"))  
echo "Internet Explorer 8.0";  
else if(strpos($_SERVER["HTTP_USER_AGENT"],"MSIE 7.0"))  
echo "Internet Explorer 7.0";  
else if(strpos($_SERVER["HTTP_USER_AGENT"],"MSIE 6.0"))  
echo "Internet Explorer 6.0";  
else if(strpos($_SERVER["HTTP_USER_AGENT"],"Firefox/3"))  
echo "Firefox 3";  
else if(strpos($_SERVER["HTTP_USER_AGENT"],"Firefox/2"))  
echo "Firefox 2";  
else if(strpos($_SERVER["HTTP_USER_AGENT"],"Chrome"))  
echo "Google Chrome";  
else if(strpos($_SERVER["HTTP_USER_AGENT"],"Safari"))  
echo "Safari";  
else if(strpos($_SERVER["HTTP_USER_AGENT"],"Opera"))  
echo "Opera";  
else echo $_SERVER["HTTP_USER_AGENT"];  
?>

超全局变量$_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/index.php?p=319&q=o135
结果:

$_SERVER["QUERY_STRING"] = “p=319&q=o135″
$_SERVER["REQUEST_URI"]  = “/index.php?p=319&q=o135″
$_SERVER["SCRIPT_NAME"]  = “/index.php”
$_SERVER["PHP_SELF"]     = “/index.php”

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

总结一下,对于

QUERY_STRING,

REQUEST_URI,

SCRIPT_NAME,

PHP_SELF,

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


你可能感兴趣的:(PHP,server)