2015-12-21 46 views
3

我正在編寫一個腳本,要求我獲取所有php配置。但是當我在瀏覽器中運行ini_get_all()並使用php5-cli時,我遇到了一個問題和不一致之處。這裏是我的代碼片段:memory_limit在php5-cli和瀏覽器中返回不同的值

$confiq = ini_get_all(); 
echo $config['memory_limit']['local_value']; 

它返回128M當我運行使用的瀏覽器,但它返回-1,當我運行使用PHP5-CLI命令行

編輯:原來,他們正在使用兩個不同的php.ini文件。我用php --ini命令檢查了cli .ini。現在我需要弄清楚如何更改.ini文件的位置,以便確定兩個php.ini文件的符號鏈接。爲了簡單起見,我創建了apache2 php.ini的符號鏈接,以確保兩者都使用相同的php.ini。

+1

檢查兩者是否都使用相同的ini文件 – bansi

+1

最簡單。只需刪除(備份)cli ini,並將符號鏈接到您需要的ini。 – bansi

+0

@bansi:是的。我相信它會以這種方式工作。不確定最佳做法或不。不太熟悉php。 – geckob

回答

2

有兩個不同的php.ini文件。

/etc/php5/apache2/php.ini for web and /etc/php5/cli/php.ini for command line。

您需要根據上下文編輯相應的ini文件。如果你需要在cli和web中使用相同的ini值,顯然你需要編輯它們。編輯ini文件後也不要忘記重新啓動apache(service apache2 restart)以查看更改。

+0

我想'Systemd'已經接管了'SysVinit' + 1來解決實際問題 – bansi

相關問題