您好,登錄后才能下訂單哦!
這篇文章主要講解了“PHP報錯信息的函數說明”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“PHP報錯信息的函數說明”吧!
在PHP中所有的報錯信息可以用error_reporting()這個函數來設置:
它的參數有字符串和數字兩種表示方法,共14個等級,但是呢,我看使用其他數字貌似也可以,起初我以為它指的是一定的報錯區間,后來,終于發現了其中的規律:
復制代碼 代碼如下:
error_reporting( 7 ) = error_reporting( 1+2+4)= error_reporting(E_ERROR | E_WARING | E_PARSE)
現在,我將其總結如下:
數字 | 常量 | 說明 |
1 | E_ERROR | 致命錯誤,腳本執行中斷,就是腳本中有不可識別的東西出現 舉例: Error:Invalid parameters. Invalid parameter name |
2 | E_WARNING | 部分代碼出錯,但不影響整體運行 舉例: Warning: require_once(E:/include/config_base.php) |
4 | E_PARSE | 字符、變量或結束的地方寫規范有誤 舉例: Parse error: syntax error, unexpected $end in |
8 | E_NOTICE | 一般通知,如變量未定義等 舉例: Notice: Undefined variable: p in E:\web\index.php on line 17 |
16 | E_CORE_ERROR | PHP進程在啟動時,發生了致命性錯誤 舉例: 暫無 |
32 | E_CORE_WARNING | 在PHP啟動時警告(非致命性錯誤) 舉例: 暫無 |
64 | E_COMPILE_ERROR | 編譯時致命性錯誤 舉例: 暫無 |
128 | E_COMPILE_WARNING | 編譯時警告級錯誤 舉例: 暫無 |
256 | E_USER_ERROR | 用戶自定義的錯誤消息 舉例: 暫無 |
512 | E_USER_WARNING | 用戶自定義的警告消息 舉例: 暫無 |
1024 | E_USER_NOTICE | 用戶自定義的提醒消息 舉例: 暫無 |
2047 | E_ALL | 以上所有的報錯信息,但不包括E_STRICT的報錯信息 舉例: 暫無 |
2048 | E_STRICT | 編碼標準化警告,允許PHP建議如何修改代碼以確保最佳的互操作性向前兼容性。 |
error_reporting 變量的默認值是 E_ALL & ~E_NOTICE
開發時,最佳的值為: E_ALL | E_STRICT
如果設置為:error_reporting(E_ALL | E_STRICT),則表示記錄所有的錯誤信息
可能會導致網站出現一大堆的錯誤代碼;但是對于程序員來說應該說是一件好事,可以把代碼優化到最優; 一些非致命性錯誤雖然不影響程序的運行,但是會加重PHP的負擔.
最后,曬出英文版的對照表:
1 | E_ERROR | Fatal run-time errors. Errors that can not be recovered from. Execution of the script is halted |
2 | E_WARNING | Non-fatal run-time errors. Execution of the script is not halted |
4 | E_PARSE | Compile-time parse errors. Parse errors should only be generated by the parser |
8 | E_NOTICE | Run-time notices. The script found something that might be an error, but could also happen when running a script normally |
16 | E_CORE_ERROR | Fatal errors at PHP startup. This is like an E_ERROR in the PHP core |
32 | E_CORE_WARNING | Non-fatal errors at PHP startup. This is like an E_WARNING in the PHP core |
64 | E_COMPILE_ERROR | Fatal compile-time errors. This is like an E_ERROR generated by the Zend Scripting Engine |
128 | E_COMPILE_WARNING | Non-fatal compile-time errors. This is like an E_WARNING generated by the Zend Scripting Engine |
256 | E_USER_ERROR | Fatal user-generated error. This is like an E_ERROR set by the programmer using the PHP function trigger_error() |
512 | E_USER_WARNING | Non-fatal user-generated warning. This is like an E_WARNING set by the programmer using the PHP function trigger_error() |
1024 | E_USER_NOTICE | User-generated notice. This is like an E_NOTICE set by the programmer using the PHP function trigger_error() |
2048 | E_STRICT | Run-time notices. PHP suggest changes to your code to help interoperability and compatibility of the code |
4096 | E_RECOVERABLE_ERROR | Catchable fatal error. This is like an E_ERROR but can be caught by a user defined handle (see also set_error_handler()) |
8191 | E_ALL | All errors and warnings, except level E_STRICT (E_STRICT will be part of E_ALL as of PHP 6.0) |
感謝各位的閱讀,以上就是“PHP報錯信息的函數說明”的內容了,經過本文的學習后,相信大家對PHP報錯信息的函數說明這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。