首頁  >  文章  >  後端開發  >  php實例-PHP中error_reporting函數用法詳細介紹

php實例-PHP中error_reporting函數用法詳細介紹

微波
微波原創
2017-06-28 12:44:37877瀏覽

這篇文章主要介紹了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 可能的值:

#1E_ERROR致命的執行階段錯誤。無法恢復的錯誤。停止執行腳本。 2E_WARNING非致命的執行階段錯誤。腳本的執行並沒有停止。 4E_PARSE編譯時錯誤。 8E_NOTICE執行時間提醒。 16E_CORE_ERROR在PHP啟動時的致命錯誤。這就好比一個在PHP核心的E_ERROR32E_CORE_WARNING在PHP啟動時的非致命的錯誤。這就好比一個在PHP核心E_WARNING警告64#致命的編譯時錯誤。 這就像由Zend腳本引擎產生了一個E_ERROR128E_COMPILE_WARNING非致命的編譯時錯誤,由Zend腳本引擎產生了一個E_WARNING警告256E_##1024#E_USER_NOTICE使用者自訂的提醒(經常是bug,也可能是有意的)#2048E_STRICT編碼標準化警告(建議如何修改以向前相容)4096
常數 描述
E_COMPILE_ERROR
USER_ERROR ##使用者自訂的致命錯誤
512 E_USER_WARNING 使用者自訂的警告(非致命性錯誤)

E_RECOVERABLE_ERROR

接近致命的執行階段錯誤,​​若未被擷取則視同E_ERROR


8191

E_ALL

#除E_STRICT外的所有錯誤


##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實例-PHP中error_reporting函數用法詳細介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn