PHP中的$_ENV存儲了一些系統的環境變量,因為牽扯到實際的操作系統,所以不可能給出$_ENV的完整列表。
$_ENV為空的可能原因:
你的php.ini的variables_order值為"GPCS",也就是說系統在定義PHP預定義變量時的順序是 GET,POST,COOKIES,SERVER,沒有定義Environment(E),你可以修改php.ini文件的 variables_order值為你想要的順序,如:"EGPCS"。這時,$_ENV的值就可以取得了。
EGPCS是Environment、Get、Post、Cookies、Server的縮寫,這是PHP中外部變量來源的全部范圍,可以用print_r($_ENV)來打印這個變量,查看他的數據。
注意,生產環境下,$_ENV都是空數組,主要是為了安全起見,不讓它獲取操作系統信息!
$_ENV,作為PHP的9個超級變量($GLOBALS,$_SERVER,$_GET,$_POST,$_COOKIE,$_FILES,$_ENV,$_REQUEST,_SESSION)中的一個, 不用它真是有點浪費,所以說你會看到DiscuzX系統就“重用”了這個 超全局變量。