警告:生產(chǎn)環(huán)境永遠(yuǎn)都不要顯示任何錯誤信息! (推薦學(xué)習(xí):PHP視頻教程)
顯示錯誤(display_errors)和錯誤報告(error_reporting)是兩回事。PHP 腳本發(fā)生錯誤時,可以根據(jù)設(shè)置選擇是否報告這個錯誤(記錄到錯誤日志中),如果設(shè)置中開啟了 display_errors,則同時把錯誤信息打印到屏幕上。
項目中常用的設(shè)置
switch (ENVIRONMENT) { // 對于開發(fā)環(huán)境,報告所有錯誤,同時顯示到屏幕上 case 'development': error_reporting(-1); ini_set('display_errors', 1); break; // 對于測試和生產(chǎn)環(huán)境,不顯示錯誤,5.3 以上的版本,不報告通知、廢棄方法、嚴(yán)格這幾類錯誤 case 'testing': case 'production': ini_set('display_errors', 0); if (version_compare(PHP_VERSION, '5.3', '>=')) { error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT & ~E_USER_NOTICE & ~E_USER_DEPRECATED); } else { error_reporting(E_ALL & ~E_NOTICE & ~E_STRICT & ~E_USER_NOTICE); } break; default: header('HTTP/1.1 503 Service Unavailable.', TRUE, 503); echo 'The application environment is not set correctly.'; exit(1); // EXIT_ERROR }
修改 php.ini 配置文件
error_reporting = E_ALL # 報告所有錯誤 display_errors = On # 顯示錯誤
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com