程序员人生 网站导航

php 获取当前页面地址

栏目:php教程时间:2014-05-11 09:22:52

在php中获取当前页面完整地址是需要通过各种函数与参考组合起来的,包括域名或主机地址,网页地址,网址参数,用户代理,端口号等。

基于函数了解,PHP实现:

  1. //获取域名或主机地址  
  2. echo $_SERVER['HTTP_HOST']."
    "
    ; #localhost 
  3. //获取网页地址  
  4. echo $_SERVER['PHP_SELF']."
    "
    ; #/blog/testurl.php 
  5. //获取网址参数  
  6. echo $_SERVER["QUERY_STRING"]."
    "
    ; #id=5 
  7. //获取用户代理  
  8. echo $_SERVER['HTTP_REFERER']."
    "
  9. //获取完整的url 
  10. echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; 
  11. echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING']; 
  12. #http://localhost/blog/testurl.php?id=5 
  13. //包含端口号的完整url 
  14. echo 'http://'.$_SERVER['SERVER_NAME'].':'.$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"]; 
  15. #http://localhost:80/blog/testurl.php?id=5 
  16. //只取路径 
  17. $url='http://'.$_SERVER['SERVER_NAME'].$_SERVER["REQUEST_URI"];  
  18. echo dirname($url); 

实例代码如下:

  1. /** 
  2.  * 获取当前页面地址 
  3.  * 
  4.  * @author phpfensi.com 
  5.  */ 
  6. function getPageUrl() { 
  7.  $pageURL = 'http'
  8.  if ($_SERVER["HTTPS"] == "on") { 
  9.   $pageURL .= "s"
  10.  } 
  11.  $pageURL .= "://"
  12.  if ($_SERVER["SERVER_PORT"] != "80") { 
  13.   $pageURL .= $_SERVER["SERVER_NAME"] . ":" . $_SERVER["SERVER_PORT"] . $_SERVER["REQUEST_URI"]; 
  14.  } else { 
  15.   $pageURL .= $_SERVER["SERVER_NAME"] . $_SERVER["REQUEST_URI"]; 
  16.  } 
  17.  return $pageURL
------分隔线----------------------------
------分隔线----------------------------

最新技术推荐