課程
/后端開發(fā)
/ThinkPHP
/快速入門ThinkPHP 5.0--基礎篇
為什么打印 $_ENV 和 $_SERVER 的結果一樣,而且打印$_ENV也沒顯示.env文件的配置內(nèi)容
2018-05-03
源自:快速入門ThinkPHP 5.0--基礎篇 2-12
正在回答
老哥牛逼
第一,要想讓$_ENV的值不為空,php.ini配置中設置variables_order = "EGPCS"或開啟。
第二,$_ENV本身就不會顯示.env配置文件中配置的環(huán)境變量信息,$_ENV只會顯示單獨配置的環(huán)境變量信息,而要想得到.env配置文件中的環(huán)境變量參數(shù)配置信息,只能通過Env::get()獲得
可以直接在配置文件中使用環(huán)境變量進行本地環(huán)境和服務器的自動配置,例如:
return?[??? ?????'hostname'??=>??Env::get('hostname','127.0.0.1'), ];
環(huán)境變量中設置的APP_DEBUG和APP_TRACE參數(shù)會自動生效(優(yōu)先于應用的配置文件),其它參數(shù)則必須通過Env::get方法才能讀取。
第一步:$_ENV會為空,其原因通常是php的配置文件php.ini的配置項為:variables_order = "GPCS"。要想讓$_ENV的值不為空,那么variables_order的值應該加上一個大寫字母“E”,即:variables_order = "EGPCS"。
第二步:
Env不顯示的問題,需要在base.php中 putenv的同時,將數(shù)據(jù)也寫入$_ENV,就可以解決了
打開thinkphp目錄下的base.php文件修改。54行左右?putenv("$name=$val");//寫入環(huán)境變量,才能在打印$_ENV文件的時候顯示出來配置的環(huán)境變量$_ENV[$name]=$val;
冷月蕭鋒
舉報
ThinkPHP5已發(fā)布多時,想了解ThinkPHP5的新特性嗎?老司機帶你馬上出發(fā)~
1 回答為啥我的ENV打印出來是array(0)
1 回答問什么打印不出來{$Think.SERVER.HTTP_HOST}
2 回答[database] 打印不出來
2 回答session打印出來為空
2 回答為什么我打印出來沒有覆蓋?打印出的是兩個數(shù)組
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學習伙伴
掃描二維碼關注慕課網(wǎng)微信公眾號
2019-02-18
老哥牛逼
2018-05-22
第一,要想讓$_ENV的值不為空,php.ini配置中設置variables_order = "EGPCS"或開啟。
第二,$_ENV本身就不會顯示.env配置文件中配置的環(huán)境變量信息,$_ENV只會顯示單獨配置的環(huán)境變量信息,而要想得到.env配置文件中的環(huán)境變量參數(shù)配置信息,只能通過Env::get()獲得
可以直接在配置文件中使用環(huán)境變量進行本地環(huán)境和服務器的自動配置,例如:
2018-05-03
第一步:$_ENV會為空,其原因通常是php的配置文件php.ini的配置項為:variables_order = "GPCS"。
要想讓$_ENV的值不為空,那么variables_order的值應該加上一個大寫字母“E”,即:variables_order = "EGPCS"。
第二步:
Env不顯示的問題,需要在base.php中 putenv的同時,將數(shù)據(jù)也寫入$_ENV,就可以解決了
打開thinkphp目錄下的base.php文件修改。54行左右?
putenv("$name=$val");
//寫入環(huán)境變量,才能在打印$_ENV文件的時候顯示出來配置的環(huán)境變量
$_ENV[$name]=$val;