PHP $_SERVER包括的變數都為全域變數了可以叫超級全域變數,下面我來給大家整理了常用的PHP $_SERVER用法詳細,希望對大家有所協助。
我常用的$_SERVER[]變數
$_SERVER['HTTP_ACCEPT_LANGUAGE']//瀏覽器語言
$_SERVER['REMOTE_ADDR'] //目前使用者 IP 。
$_SERVER['REMOTE_HOST'] //目前使用者主機名稱
$_SERVER['REQUEST_URI'] //URL
$_SERVER['REMOTE_PORT'] //連接埠。
$_SERVER['SERVER_NAME'] //伺服器主機的名稱。
$_SERVER['PHP_SELF']//正在執行指令碼的檔案名稱
$_SERVER['argv'] //傳遞給該指令碼的參數。
$_SERVER['argc'] //傳遞給程式的命令列參數的個數。
$_SERVER['GATEWAY_INTERFACE']//CGI 規範的版本。
$_SERVER['SERVER_SOFTWARE'] //伺服器標識的字串
$_SERVER['SERVER_PROTOCOL'] //請求頁面時通訊協定的名稱和版本
$_SERVER['REQUEST_METHOD']//訪問頁面時的要求方法
$_SERVER['QUERY_STRING'] //查詢(query)的字串。
$_SERVER['DOCUMENT_ROOT'] //當前運行指令碼所在的主目錄
$_SERVER['HTTP_ACCEPT'] //當前請求的 Accept: 頭部的內容。
$_SERVER['HTTP_ACCEPT_CHARSET'] //當前請求的 Accept-Charset: 頭部的內容。
$_SERVER['HTTP_ACCEPT_ENCODING'] //當前請求的 Accept-Encoding: 頭部的內容
$_SERVER['HTTP_CONNECTION'] //當前請求的 Connection: 頭部的內容。例如:“Keep-Alive”。
$_SERVER['HTTP_HOST'] //當前請求的 Host: 頭部的內容。
$_SERVER['HTTP_REFERER'] //連結到當前頁面的前一頁面的 URL 地址。
$_SERVER['HTTP_USER_AGENT'] //當前請求的 User_Agent: 頭部的內容。
$_SERVER['HTTPS']//如果通過https訪問,則被設為一個非空的值(on),否則返回off
$_SERVER['SCRIPT_FILENAME'] #當前執行指令碼的絕對路徑名。
$_SERVER['SERVER_ADMIN'] #管理員資訊
$_SERVER['SERVER_PORT'] #伺服器所使用的連接埠
$_SERVER['SERVER_SIGNATURE'] #包含伺服器版本和虛擬機器主機名的字串。
$_SERVER['PATH_TRANSLATED'] #當前指令碼所在檔案系統(不是主目錄)的基本路徑。
$_SERVER['SCRIPT_NAME'] #包含當前指令碼的路徑。這在頁面需要指向自己時非常有用。
$_SERVER['PHP_AUTH_USER'] #當 PHP 運行在 Apache 模組方式下,並且正在使用 HTTP 認證功能,這個變數便是使用者輸入的使用者名稱。
$_SERVER['PHP_AUTH_PW'] #當 PHP 運行在 Apache 模組方式下,並且正在使用 HTTP 認證功能,這個變數便是使用者輸入的密碼。
$_SERVER['AUTH_TYPE'] #當 PHP 運行在 Apache 模組方式下,並且正在使用 HTTP 認證功能,這個變數便是認證的類型
頁面程式相關
•$_SERVER['PHP_SELF']:相對於網站根目錄的路徑及 PHP 程式名稱,與 document root 相關。
•$_SERVER['HTTP_REFERER']:連結到當前頁面的前一頁面的 URL 地址。
•$_SERVER['SCRIPT_NAME']:相對於網站根目錄的路徑及 PHP 程式檔案名稱 。
•$_SERVER['REQUEST_URI']:訪問此頁面所需的 URI 。
•$_SERVER['SCRIPT_FILENAME']:當前運行 PHP 程式的絕對路徑及檔案名稱。
•$_SERVER['PATH_TRANSLATED']:當前 PHP 程式所在檔案系統(不是主目錄)的基本路徑。
•$_SERVER['QUERY_STRING']:查詢(query)的字串(URL 中第一個問號 ? 之後的內容但不包括 # 後面的內容)。
•$_SERVER['argv']:傳遞給當前 PHP 程式的參數。
•$_SERVER['argc']:命令列模式下,包含傳遞給程式的命令列參數的個數。
•$_SERVER['REQUEST_TIME']:請求開始時的時間戳記,從 PHP 5.1.0 起有效。
•$_SERVER['REQUEST_METHOD']:訪問頁面時的要求方法,例如:“GET”、“HEAD”,“POST”或“PUT”。
•$_SERVER['HTTP_ACCEPT']:當前請求的 Accept: 頭資訊的內容。
•$_SERVER['HTTP_ACCEPT_CHARSET']:當前請求的 Accept-Charset: 頭資訊的內容。例如:“iso-8859-1,*,utf-8”。
•$_SERVER['HTTP_ACCEPT_ENCODING']:當前請求的 Accept-Encoding: 頭資訊的內容。例如:“gzip”。
•$_SERVER['HTTP_ACCEPT_LANGUAGE']:當前請求的 Accept-Language: 頭資訊的內容。例如:“zh-cn”。
•$_SERVER['HTTP_CONNECTION']:當前請求的 Connection: 頭資訊的內容。例如:“Keep-Alive”。
•$_SERVER['HTTP_HOST']:當前請求的 Host: 頭資訊的內容。
•$_SERVER['HTTPS']:如果 PHP 程式是通過 HTTPS 協議被訪問,則被設為一個非空的值。
•$_SERVER['PHP_AUTH_DIGEST']:當作為 Apache 模組運行時,進行 HTTP Digest 認證的過程中,此變數被設定成用戶端發送的“Authorization”HTTP 頭內容(以便作進一步的認證操作)。
•$_SERVER['PHP_AUTH_USER']:當 PHP 運行在 Apache 或 IIS(PHP 5 是 ISAPI)模組方式下,並且正在使用 HTTP 認證功能,這個變數便是使用者輸入的使用者名稱。
•$_SERVER['PHP_AUTH_PW']:當 PHP 運行在 Apache 或 IIS(PHP 5 是 ISAPI)模組方式下,並且正在使用 HTTP 認證功能,這個變數便是使用者輸入的密碼。
•$_SERVER['AUTH_TYPE']:當 PHP 運行在 Apache 模組方式下,並且正在使用 HTTP 認證功能,這個變數便是認證的類型。
伺服器端相關
•$_SERVER['DOCUMENT_ROOT']:當前運行 PHP 程式所在的主目錄,在伺服器設定檔中定義。
•$_SERVER['GATEWAY_INTERFACE']:伺服器使用的 CGI 規範的版本,例如:“CGI/1.1”。
•$_SERVER['SERVER_ADDR']:當前運行 PHP 程式所在的伺服器的 IP 位址。
•$_SERVER['SERVER_NAME']:當前運行 PHP 程式所在的伺服器的名稱。
•$_SERVER['SERVER_ADMIN']:Apache 伺服器設定檔中的 SERVER_ADMIN 參數。
•$_SERVER['SERVER_PORT']:伺服器所使用的連接埠。如果使用 SSL 安全連線,則這個值為使用者佈建的 HTTP 連接埠。
•$_SERVER['SERVER_SIGNATURE']:包含伺服器版本和虛擬機器主機名的字串。
•$_SERVER['SERVER_SOFTWARE']:伺服器標識的字串,在響應請求時的頭資訊中給出。
•$_SERVER['SERVER_PROTOCOL']:請求頁面時通訊協定的名稱和版本,例如:“HTTP/1.0”。
其他雜項
•$_SERVER['HTTP_USER_AGENT']:當前請求的 User-Agent: 頭資訊的內容,該字串表明了訪問該頁面的使用者代理程式的資訊。
•$_SERVER['REMOTE_ADDR']:正在瀏覽當前頁面使用者的 IP 位址。
•$_SERVER['REMOTE_HOST']:正在瀏覽當前頁面使用者的主機名稱。
•$_SERVER['REMOTE_PORT']:使用者串連到伺服器時所使用的連接埠。
注意,如果以命令列方式運行 PHP,上面列出的元素幾乎沒有有效(或是沒有任何實際意義的)。
例1
PHP擷取當前url路徑
1,$_SERVER["QUERY_STRING"]
說明:查詢(query)的字串
2,$_SERVER["REQUEST_URI"]
說明:訪問此頁面所需的URI
3,$_SERVER["SCRIPT_NAME"]
說明:包含當前指令碼的路徑
4,$_SERVER["PHP_SELF"]
說明:當前正在執行指令碼的檔案名稱
執行個體:
1,http://www.bKjia.c0m/ (直接開啟首頁)
結果:
$_SERVER["QUERY_STRING"] = ""
$_SERVER["REQUEST_URI"] = "/"
$_SERVER["SCRIPT_NAME"] = "/index.php"
$_SERVER["PHP_SELF"] = "/index.php"
2,http://www.bKjia.c0m/?p=222 (附帶查詢)
結果:
$_SERVER["QUERY_STRING"] = "p=222"
$_SERVER["REQUEST_URI"] = "/?p=222"
$_SERVER["SCRIPT_NAME"] = "/index.php"
$_SERVER["PHP_SELF"] = "/index.php"
3,http://www.bKjia.c0m/index.php?p=222&q=biuuu
結果:
$_SERVER["QUERY_STRING"] = "p=222&q=biuuu"
$_SERVER["REQUEST_URI"] = "/index.php?p=222&q=biuuu"
$_SERVER["SCRIPT_NAME"] = "/index.php"
$_SERVER["PHP_SELF"] = "/index.php"
$_SERVER["QUERY_STRING"]擷取查詢語句,執行個體中可知,擷取的是?後面的值
$_SERVER["REQUEST_URI"] 擷取http://www.bKjia.c0m後面的值,包括/
$_SERVER["SCRIPT_NAME"] 擷取當前指令碼的路徑,如:index.php
$_SERVER["PHP_SELF"] 當前正在執行指令碼的檔案名稱
當前url:"http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']
總結一下,對於QUERY_STRING,REQUEST_URI,SCRIPT_NAME和PHP_SELF,深入瞭解將有利於我們在$_SERVER函數中正確調用這四個值。通過執行個體詳解$_SERVER函數中QUERY_STRING,REQUEST_URI,SCRIPT_NAME和PHP_SELF掌握四個變數之間的區別。
http://www.bkjia.com/PHPjc/632700.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/632700.htmlTechArticlePHP $_SERVER包括的變數都為全域變數了可以叫超級全域變數,下面我來給大家整理了常用的PHP $_SERVER用法詳細,希望對大家有所協助。 我常用...