-
PHP中的$_ENV是一個包含伺服器端環境變數的陣列。它是PHP中一個超級全域性變數,我們可以在PHP 程式的任何地方直接訪問它。
-
$_ENV只是被動的接受伺服器端的環境變數並把它們轉換為陣列元素,你可以嘗試直接輸出它。
-
當你想看看一個變數中究竟有什麼東西在裡面時,我所知道的方式有三種:
- 1、
var_dump($_ENV);
- 2、
print_r($_ENV);
- 3、
foreach($_ENV as $key=>$val){echo $key.'--------'.$val.'<br>';}
- 1、
-
這三種方式中,第一種我覺得最方便而且輸出的內容格式清晰。
-
由於
$_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"
,則程式執行時可能會報錯。
variables_order引數詳解
相關文章
- ajax 引數詳解
- DockerFile引數詳解Docker
- dd引數詳解
- Mysqldump引數詳解MySql
- vmstat 引數詳解
- OGG引數詳解
- tar命令引數詳解
- 函式引數詳解函式
- Oracle UNDO引數詳解Oracle
- jqGrid引數詳解
- $.ajax()方法引數詳解
- DataGuard引數配置詳解
- redis info引數詳解Redis
- ES常用引數詳解
- struts配置引數詳解
- 【轉】Cmd引數詳解
- flash wmode引數詳解
- GCC引數詳解(轉)GC
- fstab引數詳解(轉)
- lsblk命令引數詳解
- oracle rac 核心引數詳解Oracle
- Flink Checkpoint 引數詳解
- find 命令的引數詳解
- Mysql配置引數詳解(一)MySql
- Prometheus hashmod 配置引數詳解Prometheus
- SQL*Plus Set引數詳解SQL
- ntpq –p 各引數詳解
- oracle RMAN引數配置詳解Oracle
- TAR命令引數詳解(轉)
- ORACLE DG之引數詳解Oracle
- Nginx 配置檔案引數詳解Nginx
- Redis日常運維-引數詳解Redis運維
- JQuery中$.ajax()方法引數詳解jQuery
- Oracle GoldenGate常用引數詳解OracleGo
- 常用的 wget 引數詳解wget
- curl常用引數詳解及示例
- MySQL InnoDB常見引數詳解MySql
- Cocos convertToWorldSpace 引數詳解