無論作業系統,最靈活的方式是在 PHP 代碼入口處直接設置,不依賴 php.ini 權限:
ini_set('display_errors', 'On');
error_reporting(E_ALL | E_STRICT);
display_errors = On ; 開啟顯示 display_errors = Off ; 關閉顯示
注意: 若已將 php.ini 複製至 Windows 系統目錄,必須同步修改 C:\Windows\php.ini,否則不生效。
檢查是否有多處 php.ini、Apache 配置覆蓋、或代碼中調用 error_reporting(0) 導致屏蔽。
/etc/php5/apache2/php.ini
display_errors = On error_reporting = E_ALL | E_STRICT
/etc/apache2/httpd.conf(若為空文件則新增)
php_flag display_errors on php_value error_reporting 2039
sudo /etc/init.d/apache2 restart
phpinfo() 查看 Loaded Configuration File 確認實際生效的 php.ini。error_reporting(0) 並註釋掉。E_ALL | E_STRICT,盡早暴露問題。display_errors = Off,配合 log_errors = On 寫入日誌文件,定期分析。APP_DEBUG、ThinkPHP 的 APP_DEBUG)。