這篇文章主要介紹了PHP中error_reporting函數用法詳細介紹的相關資料,需要的朋友可以參考下
PHP中error_reporting函數用法詳細介紹
PHP中對錯誤的處理會用到error_reporting函數,看到最多的是error_reporting(E_ALL ^ E_NOTICE),這個是什麼意思呢?下面我們具體分析error_reporting函數。
定義用法
error_reporting() 設定 PHP 的報錯等級並傳回目前層級。
語法
error_reporting(report_level)
如果參數 report_level 未指定,目前報錯等級將會傳回。以下幾項是report_level 可能的值:
值 | 常數 | 描述 |
---|---|---|
#1 | E_ERROR | 致命的執行階段錯誤。無法恢復的錯誤。停止執行腳本。 |
2 | E_WARNING | 非致命的執行階段錯誤。腳本的執行並沒有停止。 |
4 | E_PARSE | 編譯時錯誤。 |
8 | E_NOTICE | 執行時間提醒。 |
16 | E_CORE_ERROR | 在PHP啟動時的致命錯誤。這就好比一個在PHP核心的E_ERROR |
32 | E_CORE_WARNING | 在PHP啟動時的非致命的錯誤。這就好比一個在PHP核心E_WARNING警告 |
64 | E_COMPILE_ERROR | #致命的編譯時錯誤。 這就像由Zend腳本引擎產生了一個E_ERROR|
E_COMPILE_WARNING | 非致命的編譯時錯誤,由Zend腳本引擎產生了一個E_WARNING警告 | |
E_ | USER_ERROR | ##使用者自訂的致命錯誤 |
512 | E_USER_WARNING | 使用者自訂的警告(非致命性錯誤) |
#E_USER_NOTICE | 使用者自訂的提醒(經常是bug,也可能是有意的) | |
E_STRICT | 編碼標準化警告(建議如何修改以向前相容) |
E_RECOVERABLE_ERROR
E_ALL
##PHP預設不開啟錯誤,所以你需要設定php.ini檔案:
將
display_errors = Off 改為display_errors = On##另外也要配置錯誤級別,因為PHP 預設是顯示所有錯誤的,而有些無害的提示我們不需要,所以設定如下:
將error_reporting = E_ALL 改為error_reporting = E_ALL & ~E_NOTICE### ######在PHP 程式碼中運用範例:#########提示:任意數目的以上選項都可以用「或」來連接(用OR 或|),這樣可以報告所有需要的各級別錯誤。例如,下面的程式碼關閉了用戶自訂的錯誤和警告,執行了某些操作,然後恢復到原始的報錯級別:###<?php //禁用错误报告 error_reporting(0); //报告运行时错误 error_reporting(E_ERROR | E_WARNING | E_PARSE); //报告所有错误 error_reporting(E_ALL); ?>###了解error_reporting 函數是如何使用的,再看error_reporting(E_ALL ^ E_NOTICE) 這段程式碼,意思是顯示除去E_NOTICE 之外的所有###錯誤訊息###。 ######感謝閱讀,希望能幫助大家,謝謝大家對本站的支持! ###
以上是php中error_reporting函數用法的詳細內容。更多資訊請關注PHP中文網其他相關文章!