PHP超全局變量$_ENV詳解,及$_ENV為空的可能原因


PHP中的$_ENV存儲了一些系統的環境變量,因為牽扯到實際的操作系統,所以不可能給出$_ENV的完整列表。

$_ENV為空的可能原因: 

你的php.inivariables_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系統就“重用”了這個 超全局變量。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM