PHP獲取客戶端、PHP獲取伺服器相關資訊

y0umer發表於2011-03-10


伺服器變數 $_SERVER 詳解:

1、$_SESSION[`PHP_SELF`] — 獲取當前正在執行指令碼的檔名

2、$_SERVER[`SERVER_PROTOCOL`] — 請求頁面時通訊協議的名稱和版本。例如,“HTTP/1.0”。

3、$_SERVER[`REQUEST_TIME`] — 請求開始時的時間戳。從 PHP 5.1.0 起有效。和time函式效果一樣。

4、$_SERVER[`argv`] —
傳遞給該指令碼的引數。我試了下,get方法可以得到$_SERVER[`argv`][0];post方法無法給他賦值。

5、$_SERVER[`SERVER_NAME`] — 返回當前主機名。

6、$_SERVER[`SERVER_SOFTWARE`] — 伺服器標識的字串,在響應請求時的頭資訊中給出。
如Microsoft-IIS/6.0

7、$_SERVER[`REQUEST_METHOD`] — 訪問頁面時的請求方法。例如:“GET”、“HEAD”,“POST”,“PUT”。

8、$_SERVER[`QUERY_STRING`] — 查詢(query)的字串(URL 中第一個問號 ? 之後的內容)。

9、$_SERVER[`DOCUMENT_ROOT`] — 當前執行指令碼所在的文件根目錄。在伺服器配置檔案中定義。 如E:/server

10、$_SERVER[`HTTP_ACCEPT`] — 當前請求的 Accept: 頭資訊的內容。

11、$_SERVER[`HTTP_ACCEPT_CHARSET`] — 當前請求的 Accept-Charset:
頭資訊的內容。例如:“iso-8859-1,*,utf-8”。

12、$_SERVER[`HTTP_ACCEPT_ENCODING`] — 當前請求的 Accept-Encoding:
頭資訊的內容。例如:“gzip”。

13、$_SERVER[`HTTP_ACCEPT_LANGUAGE`] — 當前請求的 Accept-Language:
頭資訊的內容。例如:“en”。

14、$_SERVER[`HTTP_CONNECTION`] — 當前請求的 Connection:
頭資訊的內容。例如:“Keep-Alive”。

15、$_SERVER[`HTTP_HOST`] — 當前請求的 Host: 頭資訊的內容。

16、$_SERVER[`HTTP_REFERER`] — 連結到當前頁面的前一頁面的 URL 地址。

17、$_SERVER[`HTTP_USER_AGENT`] — 返回使用者使用的瀏覽器資訊。也可以使用 get_browser() 得到此資訊。

18、$_SERVER[`HTTPS`] — 如果通過https訪問,則被設為一個非空的值,否則返回off.

19、$_SERVER[`REMOTE_ADDR`] — 正在瀏覽當前頁面使用者的 IP 地址。

20、$_SERVER[`REMOTE_HOST`] — 正在瀏覽當前頁面使用者的主機名。反向域名解析基於該使用者的
REMOTE_ADDR。如本地測試返回127.0.0.1

21、$_SERVER[`REMOTE_PORT`] — 使用者連線到伺服器時所使用的埠。我在本機測試沒通過,不知道什麼原因。

22、$_SERVER[`SCRIPT_FILENAME`] — 當前執行指令碼的絕對路徑名。如返回E:/server/index.php

23、$_SERVER[`SERVER_ADMIN`] — 該值指明瞭 Apache 伺服器配置檔案中的 SERVER_ADMIN
引數。如果指令碼執行在一個虛擬主機上,則該值是那個虛擬主機的值

24、$_SERVER[`SERVER_PORT`] — 伺服器所使用的埠。預設為“80”。如果使用 SSL 安全連線,則這個值為使用者設定的 HTTP
埠。

25、$_SERVER[`SERVER_SIGNATURE`] — 包含伺服器版本和虛擬主機名的字串。

26、$_SERVER[`PATH_TRANSLATED`] —
當前指令碼所在檔案系統(不是文件根目錄)的基本路徑。這是在伺服器進行虛擬到真實路徑的映像後的結果。 Apache 2 用 戶可以使用 httpd.conf 中的
AcceptPathInfo On 來定義 PATH_INFO。

27、$_SERVER[`SCRIPT_NAME`] — 包含當前指令碼的路徑。這在頁面需要指向自己時非常有用。__FILE__
包含當前檔案的絕對路徑和檔名(例如包含檔案)。

28、$_SERVER[`REQUEST_URI`] — 訪問此頁面所需的 URI。例如,“/index.html”。

29、$_SERVER[`PHP_AUTH_DIGEST`] — 當作為 Apache 模組執行時,進行 HTTP Digest
認證的過程中,此變數被設定成客戶端傳送的“Authorization”HTTP 頭內容(以便作進一步的認證操作)。

30、$_SERVER[`PHP_AUTH_USER`]– 當 PHP 執行在 Apache 或 IIS(PHP 5 是
ISAPI)模組方式下,並且正在使用 HTTP 認證功能,這個變數便是使用者輸入的使用者名稱。

31、$_SERVER[`PHP_AUTH_PW`] — 當 PHP 執行在 Apache 或 IIS(PHP 5 是
ISAPI)模組方式下,並且正在使用 HTTP 認證功能,這個變數便是使用者輸入的密碼。

32、$_SERVER[`AUTH_TYPE`]–當 PHP 執行在 Apache 模組方式下,並且正在使用 HTTP
認證功能,這個變數便是認證的型別。


相關文章