PHP獲取當(dāng)前url的函數(shù)[終于讓我找到了]
http://blog.chinaunix.net/article.php?articleId=36512&blogId=1184
[php]預(yù)定義變量(一) $_SERVER (附:獲取當(dāng)前URL地址例子) |
例: 我需要 獲取當(dāng)前的 的URL 地址$url_this = "http://".$_SERVER ['HTTP_HOST'].$_SERVER['PHP_SELF'];
服務(wù)器變量:$_SERVER注: 在 PHP 4.1.0 及以后版本使用。之前的版本,使用 $HTTP_SERVER_VARS。 $_SERVER 是一個(gè)包含諸如頭部(headers)、路徑(paths)和腳本位置(script locations)的數(shù)組。數(shù)組的實(shí)體由 web 服務(wù)器創(chuàng)建。不能保證所有的服務(wù)器都能產(chǎn)生所有的信息;服務(wù)器可能忽略了一些信息,或者產(chǎn)生了一些未在下面列出的新的信息。這意味著,大量的這些變量在 CGI 1.1 specification 中說明,所以您應(yīng)該仔細(xì)研究它。 這是一個(gè)“superglobal”,或者可以描述為自動(dòng)全局變量。這只不過意味這它在所有的腳本中都有效。在函數(shù)或方法中您不需要使用 global $_SERVER; 訪問它,就如同使用 $HTTP_SERVER_VARS 一樣。 $HTTP_SERVER_VARS 包含著同樣的信息,但是不是一個(gè)自動(dòng)全局變量。(注意: $HTTP_SERVER_VARS 和 $_SERVER 是不同的變量,PHP 處理它們的方式不同。) 如果設(shè)置了 register_globals 指令,這些變量也在所有腳本中可用;也就是,分離了 $_SERVER 和 $HTTP_SERVER_VARS 數(shù)組。相關(guān)信息,請(qǐng)參閱安全的相關(guān)章節(jié) 使用 Register Globals。這些單獨(dú)的全局變量不是自動(dòng)全局變量。 您或許會(huì)發(fā)現(xiàn)下面列出的某些 $_SERVER 元素并不可用。注意,如果以命令行方式運(yùn)行 PHP,下面列出的元素幾乎沒有有效的(或是沒有任何實(shí)際意義的)。 “PHP_SELF” 如果 PHP 以命令行方式運(yùn)行,該變量無效。 “argv” “argc” “GATEWAY_INTERFACE” 'SERVER_NAME' 'SERVER_SOFTWARE' “SERVER_PROTOCOL” “REQUEST_METHOD” “QUERY_STRING” “DOCUMENT_ROOT” “HTTP_ACCEPT” “HTTP_ACCEPT_CHARSET” “HTTP_ACCEPT_ENCODING” “HTTP_ACCEPT_LANGUAGE” “HTTP_CONNECTION” “HTTP_HOST” “HTTP_REFERER” “HTTP_USER_AGENT” “REMOTE_ADDR” 'REMOTE_HOST' 注: 必須配置 Web 服務(wù)器來建立此變量。例如 Apache 需要在 httpd.conf 中有 HostnameLookups On。參見 gethostbyaddr()。 “REMOTE_PORT” “SCRIPT_FILENAME” “SERVER_ADMIN” “SERVER_PORT” “SERVER_SIGNATURE” “PATH_TRANSLATED” “SCRIPT_NAME” “REQUEST_URI” “PHP_AUTH_USER” “PHP_AUTH_PW” “AUTH_TYPE” |
posted on 2005-12-26 12:59 bluesky 閱讀(51789) 評(píng)論(14) 編輯 收藏 所屬分類: PHP