php常見報錯等級:1、E_ERROR;2、E_WARNING;3、E_PARSE;4、E_NOTICE;5、E_USER_ERROR;6、E_USER_WARNING;7、E_USER_NOTICE;8、E_STRICT;9、E_ALL。
本教學操作環境:windows7系統、PHP7.1版,DELL G3電腦
php 中的錯誤等級有:
1 |
E_ERROR (integer)
|
#致命的運行時錯誤。這類錯誤一般是不可恢復的情況,例如記憶體分配所導致的問題。後果是導致腳本終止不再繼續運作。 | |
2 |
#E_WARNING (integer)
|
執行階段警告(非致命錯誤)。僅給出提示訊息,但是腳本不會終止運行。 | |
4 |
#E_PARSE (integer)
|
編譯時語法解析錯誤。解析錯誤僅由分析器產生。 | |
8 |
#E_NOTICE (integer)
|
執行階段通知。表示腳本遇到可能會表現為錯誤的情況,但是在可以正常運作的腳本裡面也可能會有類似的通知。 |
# |
16 |
E_CORE_ERROR (integer) |
在PHP初始化啟動過程中發生的致命錯誤。這個錯誤類似E_ERROR ,但是由PHP引擎核心產生的。 |
since PHP 4 |
#32 |
E_CORE_WARNING (integer) |
PHP初始化啟動過程中發生的警告(非致命錯誤) 。類似 E_WARNING ,但是由PHP引擎核心產生的。 |
since PHP 4 |
64 |
#E_COMPILE_ERROR (integer) |
致命編譯時錯誤。類似E_ERROR , 但是是由Zend腳本引擎產生的。 |
since PHP 4 |
128 |
#E_COMPILE_WARNING (integer) |
編譯時警告(非致命錯誤)。類似 E_WARNING ,但是由Zend腳本引擎產生的。 |
since PHP 4 |
256 |
#E_USER_ERROR (integer) |
使用者產生的錯誤訊息。類似 E_ERROR , 但是是使用者自己在程式碼中使用PHP函數 trigger_error()來產生的。 |
since PHP 4 |
512 |
#E_USER_WARNING (integer) |
使用者產生的警告訊息。類似 E_WARNING , 但是是使用者自己在程式碼中使用PHP函數 trigger_error()來產生的。 |
since PHP 4 |
1024 |
#E_USER_NOTICE (integer) |
使用者產生的通知訊息。類似 E_NOTICE , 但是是使用者自己在程式碼中使用PHP函數 trigger_error()來產生的。 |
since PHP 4 |
2048 |
##E_STRICT # (integer)
| 啟用PHP 對程式碼的修改建議,以確保程式碼具有最佳的互通性和向前相容性。 since PHP 5 | |
E_RECOVERABLE_ERROR (integer)
| 可被捕捉的致命錯誤。它表示發生了一個可能非常危險的錯誤,但還沒有導致PHP引擎處於不穩定的狀態。如果該錯誤沒有被使用者自訂句柄捕獲,將成為一個 E_ERROR # 從而腳本終止執行。 | since PHP 5.2.0||
8192 |
E_DEPRECATED (integer)
| 執行階段通知。啟用後將會對在未來版本中可能無法正常運作的程式碼給予警告。since PHP 5.3.0 | |
E_USER_DEPRECATED #(integer)
| 用戶產少的警告訊息。類似
E_DEPRECATED , 但是是使用者自己在程式碼中使用PHP函數 trigger_error()來產生的。
| since PHP 5.3.0||
30719 |
E_ALL ## (integer)
|
E_STRICT #出外的所有錯誤和警告訊息。 | 30719 in PHP 5.3.x, 6143 in PHP 5.2.x, 2047 previously
php常見報錯等級:
E_ERROR:致命的執行階段錯誤(它會阻止腳本的執行)
:運行時警告(非致命的錯誤)
:解析錯誤
:注意(事情可能是或可能不是一個問題)
:使用者產生的錯誤訊息,由trigger_error()函數產生
:使用者產生的警告,由trigger_error()函數產生
1.修改PHP的配置檔案php.ini
這種方式設定error_reporting後,重啟web伺服器,就會永久生效。開啟設定檔php.ini,查看錯誤報告等級error_reporting的預設值,如下:
error_reporting=E_ALL & ~E_DEPRECATED & ~E_STRICT1.
意思是報告所有的錯誤,但除了E_DEPRECATED和E_STRICT這兩種。
將其修改為:
error_reporting=E_ALL & ~E_NOTICE1.
意思是報告所有的錯誤,但除了E_NOTICE這一種。這也是最常用的錯誤報告級別,它不會報告注意類別(如:使用了未定義的變數)的錯誤。
儲存,重啟web伺服器後生效。
2. 使用error_reporting()函數
int error_reporting ([ int $level ] )1.參數可以是整數或對應的常數標識符,建議使用常數的形式。傳回值為目前位置處起作用的錯誤報告等級的值(整數值)。
注意:設定檔php.ini中display_errors的預設值為On,代表顯示錯誤提示,如果設定為Off,就會關閉所有的錯誤提示。
PHP影片教學
》以上是php常見報錯等級有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!