PHP获取当前页面网址(主机/域名、路径、参数)的方法
分类 网站技术/村民张先生 发布于 2015-12-04 13:51
例:http://www.xxx.com/yyy/zzz.php?a=bbb
$_SERVER['HTTP_HOST'] 可获取到 www.xxx.com
$_SERVER['PHP_SELF'] 可获取到 /yyy/zzz.php
$_SERVER['QUERY_STRING'] 可获取到问号后的参数部分
$_SERVER['REQUEST_URI'] 可获取到 /yyy/zzz.php?a=bbb
$_SERVER['REQUEST_URI']
等同于
$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING']
测试文件(来源 http://my.oschina.net/surjur/blog/311781):
<?php //获取域名或主机地址 echo $_SERVER['HTTP_HOST']."<br />"; //获取网页地址 echo $_SERVER['PHP_SELF']."<br />"; //获取网址参数 echo $_SERVER['QUERY_STRING']."<br />"; //获取用户代理 echo $_SERVER['HTTP_REFERER']."<br />"; //获取完整的url echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING']; //包含端口号的完整url echo 'http://'.$_SERVER['SERVER_NAME'].':'.$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"]; //只取路径 $url='http://'.$_SERVER['SERVER_NAME'].$_SERVER["REQUEST_URI"]; echo dirname($url); ?>
更多说明(来源 http://www.cnblogs.com/mitang/p/3874291.html):
$_SERVER["QUERY_STRING"] 获取查询 语句,实例中可知,获取的是?后面的值
$_SERVER["REQUEST_URI"] 获取 http://localhost 后面的值,包括/
$_SERVER["SCRIPT_NAME"] 获取当前脚本的路径,如:index.php
$_SERVER["PHP_SELF"] 当前正在执行脚本的文件名
欢迎谈谈你的看法(无须登录) *正文中请勿包含"http://"否则将被拦截