搜尋
首頁後端開發php教程PHP中$_SERVER的詳細用法
PHP中$_SERVER的詳細用法Apr 04, 2018 am 10:12 AM
phpserver詳細

本篇文章的內容是PHP中$_SERVER的詳細用法,現在分享給大家,也可以給有需要的朋友一個參考

$_SERVER['PHP_SELF'] #目前正在執行腳本的檔名,與document root相關。
$_SERVER['argv'] #傳遞給該腳本的參數。
$_SERVER['argc'] #包含傳遞給程式的命令列參數的個數(如果執行在命令列模式)。
$_SERVER['GATEWAY_INTERFACE'] #伺服器所使用的 CGI 規範的版本。例如,「CGI/1.1」。
$_SERVER['SERVER_NAME'] #目前執行腳本所在伺服器主機的名稱。
$_SERVER['SERVER_SOFTWARE'] #伺服器標識的字串,在回應請求時的頭部中給出。
$_SERVER['SERVER_PROTOCOL'] #請求頁面時通訊協定的名稱和版本。例如,「HTTP/1.0」。
$_SERVER['REQUEST_METHOD'] #造訪頁面時的請求方法。例如:“GET”、“HEAD”,“POST”,“PUT”。
$_SERVER['QUERY_STRING'] #查詢(query)的字串。
$_SERVER['DOCUMENT_ROOT'] #目前運行腳本所在的文檔根目錄。在伺服器設定檔中定義。
$_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: 頭部的內容。例如:“en”。
$_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['REMOTE_ADDR'] #正在瀏覽目前頁面使用者的IP地址。
$_SERVER['REMOTE_HOST'] #正在瀏覽目前頁面使用者的主機名稱。
$_SERVER['REMOTE_PORT'] #使用者連接到伺服器時所使用的連接埠。
$_SERVER['SCRIPT_FILENAME'] #目前執行腳本的絕對路徑名稱。
$_SERVER['SERVER_ADMIN'] #管理員資訊
$_SERVER['SERVER_PORT'] #伺服器所使用的連接埠
$_SERVER['SERVER_SIGNATURE'] #包含伺服器版本和虛擬主機名稱的字元串。
$_SERVER['PATH_TRANSLATED'] #目前腳本所在檔案系統(不是文件根目錄)的基本路徑。
$_SERVER['SCRIPT_NAME'] #包含目前腳本的路徑。這在頁面需要指向自己時非常有用。
$_SERVER['REQUEST_URI'] #存取此頁面所需的 URI。例如,“/index.html”。
$_SERVER['PHP_AUTH_USER'] #當 PHP 運行在 Apache 模組方式下,並且正在使用 HTTP 認證功能,這個變數就是使用者輸入的使用者名稱。
$_SERVER['PHP_AUTH_PW'] #當 PHP 運行在 Apache 模組方式下,並且正在使用 HTTP 認證功能,這個變數就是使用者輸入的密碼。
$_SERVER['AUTH_TYPE'] #當 PHP 運行在 Apache 模組方式下,並且正在使用 HTTP 認證功能,這個變數就是認證的型別。
$_SERVER[”HTTP_X_FORWARDED_FOR”] #透過代理伺服器取得客戶端的真實IP 位址
$_SERVER['HTTP_VIA'] #代理伺服器IP
$_SERVER['HTTP_CLIENT_IP'] #客戶端IP

伺服器變數:$_SERVER

附註: 在PHP 4.1.0 及以後版本使用。之前的版本,使用 $HTTP_SERVER_VARS。

$_SERVER 是一個包含諸如頭部(headers)、路徑(paths)和腳本位置(script locations)的陣列。數組的實體由 web 伺服器建立。不能保證所有的伺服器都能產生所有的信息;伺服器可能忽略了一些信息,或者產生了一些未在下面列出的新的信息。這意味著,大量的這些變數在 CGI 1.1 specification 中說明,所以您應該仔細研究它。

這是一個“superglobal”,或者可以描述為自動全域變數。這只不過意味這它在所有的腳本中都有效。在函數或方法中您不需要使用 global $_SERVER; 來存取它,就如同使用 $HTTP_SERVER_VARS 一樣。

$HTTP_SERVER_VARS 包含相同的訊息,但不是自動全域變數。 (注意: $HTTP_SERVER_VARS 和$_SERVER 是不同的變量,PHP 處理它們的方式不同。)

如果設定了register_globals 指令,這些變數也在所有腳本中可用;也就是,分離了$_SERVER 和$HTTP_SERVER_VARS 陣列。相關信息,請參閱安全的相關章節 使用 Register Globals。這些單獨的全域變數不是自動全域變數。

您或許會發現下面列出的某些 $_SERVER 元素並不可用。請注意,如果以命令列方式運行 PHP,下面列出的元素幾乎沒有有效的(或是沒有任何實際意義的)。

 

「PHP_SELF」
目前正在執行腳本的檔案名,與 document root相關。舉例來說,在URL位址為
http://easyboor.com/test.php/foo.bar 的腳本中使用$_SERVER['PHP_SELF'] 將會得到/ test.php/foo.bar 這個結果。

如果 PHP 以命令列方式運行,則變數無效。

「argv」
傳遞給該腳本的參數。當腳本運行在命令列方式時,argv 變數傳遞給程式 C 語言樣式的命令列參數。當呼叫 GET 方法時,該變數包含請求的資料。

「argc」
包含傳遞給程式的命令列參數的數量(如果執行在命令列模式)。

「GATEWAY_INTERFACE」
伺服器所使用的 CGI 規範的版本。例如,「CGI/1.1」。

'SERVER_NAME'
目前執行腳本所在伺服器主機的名稱。如果該腳本運行在一個虛擬主機上,該名稱是由該虛擬主機所設定的值決定。

'SERVER_SOFTWARE'
伺服器標識的字串,在回應請求時的頭部中給出。

「SERVER_PROTOCOL」
要求頁面時通訊協定的名稱和版本。例如,「HTTP/1.0」。

「REQUEST_METHOD」
造訪頁面時的請求方法。例如:“GET”、“HEAD”,“POST”,“PUT”。

「QUERY_STRING」
查詢(query)的字串。

「DOCUMENT_ROOT」
目前運行腳本所在的文檔根目錄。在伺服器設定檔中定義。

「HTTP_ACCEPT」
目前要求的 Accept: 頭部的內容。

「HTTP_ACCEPT_CHARSET」
目前請求的 Accept-Charset: 頭部的內容。例如:「iso-8859-1,*,utf-8」。

「HTTP_ACCEPT_ENCODING」
目前要求的 Accept-Encoding: 頭部的內容。例如:“gzip”。

「HTTP_ACCEPT_LANGUAGE」
目前要求的 Accept-Language: 頭部的內容。例如:“en”。

「HTTP_CONNECTION」
目前要求的 Connection: 頭部的內容。例如:「Keep-Alive」。

「HTTP_HOST」
目前要求的 Host: 頭部的內容。

「HTTP_REFERER」
連結到目前頁面的前一頁面的 URL 位址。不是所有的用戶代理(瀏覽器)都會設定這個變量,而且有的還可以手動修改 HTTP_REFERER。因此,這個變數不總是正確真實的。

「HTTP_USER_AGENT」
目前請求的 User_Agent: 頭部的內容。該字串表明了訪問該頁面的用戶代理的資訊。一個典型的例子是:Mozilla/4.5 [en] (X11; U; Linux 2.2.9 i586)。您也可以使用 get_browser() 來得到這個資訊。

「REMOTE_ADDR」
正在瀏覽目前頁面使用者的 IP 位址。

'REMOTE_HOST'
正在瀏覽目前頁面使用者的主機名稱。反向網域解析是基於該使用者的 REMOTE_ADDR。

附註: 必須設定 Web 伺服器來建立此變數。例如 Apache 需要在 httpd.conf 中有 HostnameLookups On。參見 gethostbyaddr()。

“REMOTE_PORT”
使用者連接到伺服器時所使用的連接埠。

「SCRIPT_FILENAME」
目前執行腳本的絕對路徑名稱。

「SERVER_ADMIN」
此值指明了 Apache 伺服器設定檔中的 SERVER_ADMIN 參數。如果腳本運行在一個虛擬主機上,則該值是該虛擬主機的值。

“SERVER_PORT”
伺服器所使用的連接埠。預設為“80”。如果你使用 SSL 安全連接,則這個值為您所設定的 HTTP 連接埠。

「SERVER_SIGNATURE」
包含伺服器版本和虛擬主機名稱的字串。

「PATH_TRANSLATED」
目前腳本所在檔案系統(不是文件根目錄)的基本路徑。這是在伺服器進行虛擬到真實路徑的映像後的結果。

「SCRIPT_NAME」
包含目前腳本的路徑。這在頁面需要指向自己時非常有用。

「REQUEST_URI」
存取此頁面所需的 URI。例如,“/index.html”。

「PHP_AUTH_USER」
當 PHP 運行在 Apache 模組方式下,並且正在使用 HTTP 認證功能,這個變數就是使用者輸入的使用者名稱。

「PHP_AUTH_PW」
當 PHP 運行在 Apache 模組方式下,並且正在使用 HTTP 認證功能,這個變數就是使用者輸入的密碼。

「AUTH_TYPE」
當 PHP 運行在 Apache 模組方式下,並且正在使用 HTTP 認證功能,這個變數就是認證的型別。

相關推薦:

PHP中$_SERVER的使用總結分享

細說PHP中的$_SERVER

php之$_SERVER函數解析


##

以上是PHP中$_SERVER的詳細用法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
php怎么把负数转为正整数php怎么把负数转为正整数Apr 19, 2022 pm 08:59 PM

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

如何安装、卸载、重置Windows服务器备份如何安装、卸载、重置Windows服务器备份Mar 06, 2024 am 10:37 AM

WindowsServerBackup是WindowsServer操作系统自带的一个功能,旨在帮助用户保护重要数据和系统配置,并为中小型和企业级企业提供完整的备份和恢复解决方案。只有运行Server2022及更高版本的用户才能使用这一功能。在本文中,我们将介绍如何安装、卸载或重置WindowsServerBackup。如何重置Windows服务器备份如果您的服务器备份遇到问题,备份所需时间过长,或无法访问已存储的文件,那么您可以考虑重新设置WindowsServer备份设置。要重置Windows

php字符串有没有下标php字符串有没有下标Apr 24, 2022 am 11:49 AM

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

php怎么除以100保留两位小数php怎么除以100保留两位小数Apr 22, 2022 pm 06:23 PM

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

php怎么读取字符串后几个字符php怎么读取字符串后几个字符Apr 22, 2022 pm 08:31 PM

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。

php怎么根据年月日判断是一年的第几天php怎么根据年月日判断是一年的第几天Apr 22, 2022 pm 05:02 PM

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

php怎么查找字符串是第几位php怎么查找字符串是第几位Apr 22, 2022 pm 06:48 PM

查找方法:1、用strpos(),语法“strpos("字符串值","查找子串")+1”;2、用stripos(),语法“strpos("字符串值","查找子串")+1”。因为字符串是从0开始计数的,因此两个函数获取的位置需要进行加1处理。

php怎么判断有没有小数点php怎么判断有没有小数点Apr 20, 2022 pm 08:12 PM

php判断有没有小数点的方法:1、使用“strpos(数字字符串,'.')”语法,如果返回小数点在字符串中第一次出现的位置,则有小数点;2、使用“strrpos(数字字符串,'.')”语句,如果返回小数点在字符串中最后一次出现的位置,则有。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。