當前位置:首頁 » 編程語言 » php超級變數

php超級變數

發布時間: 2022-09-02 12:37:12

1. php超級全局變數數組的常量

PHP系統常量
__FILE__ 當前PHP程序腳本的絕對路徑及文件名稱
__LINE__ 存儲該常量所在的行號
__FUNCTION__ 存儲該常量所在的函數名稱
__CLASS__ 存儲該常量所在的類的名稱
__METHOD__存儲該常量所在的類的方法的名稱
PHP_VERSION 存儲當前PHP的版本號,也可以通過PHPVERSION()函數獲取。
PHP_OS 存儲當前伺服器的操作系統

2. PHP超級全局變數數組的列表

php超級全局變數列表
$_GET[] 獲得以GET方法提交的變數數組
$_POST[] 獲得以POST方法提交的變數數組
$_COOKIE[] 獲取和設置當前網站的Cookie標識
$_SESSION[] 取得當前用戶訪問的唯一標識,以數組形式體現,如sessionid以及自定義session數據
$_ENV[] 當前php環境變數數組
$_SERVER[] 當前php伺服器變數數組
$_FILES[] 上傳文件時提交到當前腳本的參數值,以數組形式體現
$_REQUEST[] 包含當前腳本提交的全部請求,$_GET、$_POST、$_COOKIE的所有動作
$GLOBALS[] 包含正在執行腳本所有超級全局變數的引用內容

3. PHP中的超級全局變數$_ENV["HOSTNAME"]怎麼輸出不了

<?php
if(isset($_ENV["HOSTNAME"])){
echo$_ENV["HOSTNAME"];
}else{
echo'沒有值';
}
?>

望採納 Thx

4. PHP超級全局變數數組的介紹

PHP超級全局變數數組(Super Global Array),又稱為PHP預定義數組,是由PHP引擎內置的,不需要開發者重新定義。 在PHP腳本運行時,PHP會自動將一些數據放在超級全局數組中。

5. php中環境變數跟超全局變數的區別

環境變數指系統文件路徑等信息,一般與編程無關,只在搭建環境中用到。

PHP中預定義了幾個超級全局變數 ,這意味著它們在一個腳本的全部作用域中都可用。 你不需要特別說明,就可以在函數及類中使用。

PHP 超級全局變數列表:

  • $GLOBALS

  • $_SERVER

  • $_REQUEST

  • $_POST

  • $_GET

  • $_FILES

  • $_ENV

  • $_COOKIE

  • $_SESSION

6. php中超級全局變數

只是一個全局變數,只是相對函數內部的變數而言算是全局變數。我也不明白你的超級全局變數一說,如果是指可跨頁訪問的那請用session會話變數。

7. php 伺服器變數$_SERVER 伺服器環境變數 $_ENV

PHP  $_SERVER 變數

$_SERVER 是一個包含諸如頭信息(header)、路徑(path)和腳本位置(script locations)的數組。它是 PHP 中一個超級全局變數,我們可以在 PHP 程序的任何地方直接訪問它。

$_SERVER 包含著眾多的信息,你可以嘗試直接列印它:

print_r($_SERVER);

$_SERVER 數組元素

更多情況下,我們只需要 $_SERVER 數組中的某些元素(數組單元)。$_SERVER 數組包含的元素如下:

頁面程序相關

$_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,上面列出的元素幾乎沒有有效的(或是沒有任何實際意義的)。

PHP $_ENV 變數

$_ENV 是一個包含伺服器端環境變數的數組。它是 PHP 中一個超級全局變數,我們可以在 PHP 程序的任何地方直接訪問它。

$_ENV 只是被動的接受伺服器端的環境變數並把它們轉換為數組元素,你可以嘗試直接列印它:

print_r($_ENV);

限於篇幅,在此不再列出列印的結果,且不同的伺服器上,列印出的結果可能是完全不同的。

$_ENV 數組元素

$_ENV 數組中的元素(數組單元)隨伺服器環境不同而有較大差異,所以無法像 $_SERVER 那樣列出完整的列表。以下是 $_ENV 數組包含的比較通用的元素:

$_SERVER[『PATH』]:環境變數 PATH 路徑。

$_SERVER[『CLASSPATH』]:系統 CLASSPATH 路徑。

$_SERVER[『LIB』]:系統 LIB 庫路徑。

$_SERVER[『INCLUDE』]:系統 Include 路徑,注意與 PHP 的包含路徑是不一樣的。

$_SERVER[『OS』]:操作系統類型。

$_SERVER[『LANG』]:系統語言,如 en_US 或 zh_CN。

$_SERVER[『PWD』]:當前工作目錄。

$_SERVER[『TEMP』]:系統 TEMP 路徑。

$_SERVER[『AP_PARENT_PID』]:當前進程 ID 號。

$_SERVER[『NUMBER_OF_PROCESSORS』]:系統 CPU 數目。

$_ENV 為空的原因及解決辦法

如果列印輸出 $_ENV 為空,可以檢查一下 php.ini 的配置:

variables_order = "EGPCS"

上述配置表示 PHP 接受的外部變數來源及順序,EGPCS 是 Environment、Get、Post、Cookies 和 Server 的縮寫。如果 variables_order 的配置中缺少 E ,則 PHP 無法接受環境變數,那麼 $_ENV 也就為空了。

8. $_ENV是干什麼用的

PHP中的$_ENV是一個包含伺服器端環境變數的數組。它是PHP中一個超級全局變數,我們可以在PHP 程序的任何地方直接訪問它。

$_ENV只是被動的接受伺服器端的環境變數並把它們轉換為數組元素,你可以嘗試直接輸出它。

當你想看看一個變數中究竟有什麼東西在裡面時,我所知道的方式有三種:
1、var_mp($_ENV);
2、print_r($_ENV);
3、foreach($_ENV as $key=>$val){echo $key.'--------'.$val.'<br>';}
這三種方式中,第一種我覺得最方便而且輸出的內容格式清晰。

由於$_ENV變數是取決於伺服器的環境變數的,從不同的伺服器上獲取的$_ENV變數列印出的結果可能是完全不同的。所以無法像$_SERVER 那樣列出完整的列表。以下是$_ENV 數組包含的比較通用的元素:
有時候,$_ENV會為空,其原因通常是php的配置文件php.ini的配置項為:variables_order = "GPCS"。要想讓$_ENV的值不為空,那麼variables_order的值應該加上一個大寫字母「E」,即:variables_order = "EGPCS"。

上述配置表示了PHP接受的外部變數來源及順序,EGPCS是Environment、Get、Post、Cookies、Server的縮寫。如果variables_order 的配置中缺少E ,則PHP 無法接受環境變數,那麼$_ENV 也就為空了。

由於開啟$_ENV,即variables_order = "EGPCS"會導致一些性能損失,按php官方的說法是,在生產環境中,不推薦使用。他們更推薦使用getenv (string $varname)函數來獲取Environment中的值,而這點需要在編程時就注意到。如果編程時用了$_ENV而variables_order中又沒有配置為variables_order = "EGPCS",則程序運行時可能會報錯。

熱點內容
買的騰訊伺服器是裝在電腦上嗎 發布:2025-01-15 23:25:58 瀏覽:411
如何查看電腦的配置是不是i5 發布:2025-01-15 23:24:21 瀏覽:434
PI資料庫 發布:2025-01-15 23:14:42 瀏覽:882
我的世界手機版暖心伺服器 發布:2025-01-15 23:05:02 瀏覽:169
xts壓縮比 發布:2025-01-15 23:02:41 瀏覽:424
怎麼看聯系人存儲位置 發布:2025-01-15 22:47:14 瀏覽:794
旗艦560配置的是什麼發動機 發布:2025-01-15 22:40:59 瀏覽:626
sql多表連接查詢 發布:2025-01-15 22:33:12 瀏覽:221
android網路休眠 發布:2025-01-15 22:32:12 瀏覽:350
怎麼不下魯大師查看電腦配置 發布:2025-01-15 22:30:23 瀏覽:311