PHP获取当前页面URL函数

在php中获取页面URL文章我都介绍过了几十次了,但今天发现有一个非常不错的处理函数,下面给大家介绍一下.

在PHP中,没有默认的Function来获取目前所在页面的URL,所以今天就向大家介绍一个在PHP获取当前页面完整URL的PHP函数.

函数代码如下,调用时只需要使用 curPageURL() 就行啦:

  1. /* 获得当前页面URL开始 */
  2. function curPageURL() {
  3. $pageURL = 'http';
  4. if ($_SERVER["HTTPS"] == "on") { // 如果是SSL加密则加上“s”
  5. $pageURL .= "s";
  6. }
  7. $pageURL .= "://";
  8. if ($_SERVER["SERVER_PORT"] != "80") {
  9. $pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
  10. } else {
  11. $pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
  12. }
  13. return $pageURL;
  14. }
  15. /* 获得当前页面URL结束 */

补充一下server参数说明,代码如下:

  1. //获取域名或主机地址
  2. echo $_SERVER['HTTP_HOST']."<br>"; #localhost
  3. //获取网页地址
  4. echo $_SERVER['PHP_SELF']."<br>"; #/blog/testurl.php
  5. //获取网址参数
  6. echo $_SERVER["QUERY_STRING"]."<br>"; #id=5
  7. //获取用户代理
  8. echo $_SERVER['HTTP_REFERER']."<br>";
  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. //开源代码phpfensi.com
  17. //只取路径
  18. $url='http://'.$_SERVER['SERVER_NAME'].$_SERVER["REQUEST_URI"];
  19. echo dirname($url);
  20. #http://localhost/blog