首頁 >後端開發 >php教程 >php $_ENV為空的原因是因為什麼?

php $_ENV為空的原因是因為什麼?

怪我咯
怪我咯原創
2017-07-11 16:54:011758瀏覽

PHP中的$_ENV是一個包含伺服器端環境變數的陣列。它是PHP中一個超級全域變量,我們可以在PHP 程式的任何地方直接存取它。 $_ENV只是被動的接受伺服器端的環境變數並把它們轉換為陣列元素,你可以嘗試直接輸出它,它們中的許多都是由php所運行的系統決定,完整的列表是不可能的,需要查看php所在伺服器的系統文件以確定其特定的環境變數。和$_SERVER一樣,這也是自動全域變量,在所有的腳本中都有效,在函數或物件的方法中不需要使用global關鍵字來存取它。在下面的範例中用foreach語句,將php中能使用的php所在伺服器的環境相關資訊全部輸出,以供使用者查看。

$_ENV記載了一些系統環境變數(因為牽扯到實際的作業系統,所以不可能給出$_ENV的完整列表)。

但有些朋友的$_ENV是空的,可能是原因是:
你的php.ini的variables_order值為"GPCS",也就是說系統在定義PHP預先定義變數時的順序是GET,POST,COOKIE#S,SERVER,沒有定義Environment(E),你可以修改php.ini檔案的variables_order值為你想要的順序,如:"EGPCS"。這時,$_ENV的值就可以取得了

EGPCS值(EGPCS是Environment、Get、Post、Cookies、Server的縮寫-- 這是PHP中外部變數來源的全部範圍)

以上是php $_ENV為空的原因是因為什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn