關於用php 獲取當前腳本的url很多朋友會說很簡單,但是要獲取很詳細的就要經過多次判斷哦。
$PHP_TIME = time();
$PHP_SELF = isset($_SERVER['PHP_SELF']) ? $_SERVER['PHP_SELF'] : (isset($_SERVER['SCRIPT_NAME']) ? $_SERVER['SCRIPT_NAME'] : $_SERVER['ORIG_PATH_INFO']);
/** 獲取當前運行的腳本名: 剛開始看是不是有點亂呢。 咋沒用if else 呢。 看這樣的東西。我們最好從右看到左。這樣比較好明白點。$_SERVER['SCRIPT_NAME'] $_SERVER['PHP_SELF'] $_SERVER['ORIG_PATH_INFO'] 這三個服務器全局變量都是獲取 當前腳本名的。主要看服務器當前環境了。那個存在的就獲取那個。 isset() 函數 十分有用。 測試一個變量是否已經定義。 注: $a= NULL ; isset($a) 這樣會返回false的哦。 注意 isset 和empty 兩個函數的用法。用得不好會出大問題的。自己看手冊。 */ $PHP_QUERYSTRING = $_SERVER['QUERY_STRING']; $PHP_DOMAIN = $_SERVER['SERVER_NAME']; $PHP_REFERER = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : ''; $PHP_SCHEME = $_SERVER['SERVER_PORT'] == '443' ? 'https://' : 'http://'; //測試服務器是否啟動了ssl 連接如果是的話。就用https://安全連接來進行通行 $PHP_PORT = $_SERVER['SERVER_PORT'] == '80' ? '' : ':'.$_SERVER['SERVER_PORT']; $PHP_SITEURL = $PHP_SCHEME.$PHP_DOMAIN.$PHP_PORT.PHPCMS_PATH; $PHP_URL = $PHP_SCHEME.$PHP_DOMAIN.$PHP_PORT.$PHP_SELF.($PHP_QUERYSTRING ? '?'.$PHP_QUERYSTRING : ''); /** 獲取當前腳本的URL */