萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> php 獲取當前頁面地址

php 獲取當前頁面地址

在php中獲取當前頁面完整地址是需要通過各種函數與參考組合起來的,包括域名或主機地址 網頁地址 網址參數 用戶代理 端口號等。

基於函數了解


PHP實現:

 代碼如下 復制代碼

//獲取域名或主機地址
echo $_SERVER['HTTP_HOST']."<br>"; #localhost

//獲取網頁地址
echo $_SERVER['PHP_SELF']."<br>"; #/blog/testurl.php

//獲取網址參數
echo $_SERVER["QUERY_STRING"]."<br>"; #id=5

//獲取用戶代理
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'];
#http://localhost/blog/testurl.php?id=5

//包含端口號的完整url
echo 'http://'.$_SERVER['SERVER_NAME'].':'.$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
#http://localhost:80/blog/testurl.php?id=5

//只取路徑
$url='http://'.$_SERVER['SERVER_NAME'].$_SERVER["REQUEST_URI"];
echo dirname($url);

實例

 代碼如下 復制代碼

/**
 * 獲取當前頁面地址
 *
 * @author 111cn.net
 */
function getPageUrl() {
 $pageURL = 'http';

 if ($_SERVER["HTTPS"] == "on") {
  $pageURL .= "s";
 }
 $pageURL .= "://";

 if ($_SERVER["SERVER_PORT"] != "80") {
  $pageURL .= $_SERVER["SERVER_NAME"] . ":" . $_SERVER["SERVER_PORT"] . $_SERVER["REQUEST_URI"];
 } else {
  $pageURL .= $_SERVER["SERVER_NAME"] . $_SERVER["REQUEST_URI"];
 }
 return $pageURL;
}

copyright © 萬盛學電腦網 all rights reserved