PHP如何自定義錯誤處理?

在做php開發時,我們開發的程序有時會出錯,也許是代碼的問題,又或者是用戶輸入的數據有問題,如果我們不對錯誤做定制,php就會顯示一個比較丑陋的錯誤提示,而且會暴露我們的程序信息 。 那么我們該如何自定義錯誤處理?操作方法 01 先看下PHP默認的錯誤提示,我們先寫一個有問題的代碼,除法運算我們除以0,大家都知道除法是不能除0的,程序也知道這個規則,所以它會報錯 。

PHP如何自定義錯誤處理?



02 頁面運行后,顯示了一個丑陋的錯誤信息,而且把代碼文件給暴露出來了 。

PHP如何自定義錯誤處理?



03 【PHP如何自定義錯誤處理?】我們應該避免這種情況,自定義錯誤處理,讓出錯信息更友善 。
可以調用php的set_error_handler函數,這個函數接收一個字符串參數,指明一個函數來自定義錯誤處理 。

PHP如何自定義錯誤處理?



04 接著我們來定義這個錯誤處理的函數 。
displayError函數里,我們重新對錯誤信息進行了包裝輸出 。 根據不同級別(errorNo)的錯誤,顯示不同的信息 。

PHP如何自定義錯誤處理?



05 現在再次運行頁面,看下報錯信息是怎樣顯示的 。
如圖,可以看到現在的報錯信息比較友善了 。
(你可以對這個報錯信息做更美觀的設計,這里只做示例 。 )

PHP如何自定義錯誤處理?



06 除了程序在執行時發現問題,觸發錯誤外,我們還可以自己觸發錯誤處理 。 比如是業務邏輯上的問題,而不是代碼問題,我們也可以觸發錯誤處理 。
調用php的trigger_error函數就可以了,這個函數接收二個參數,第一個是錯誤信息,第二個是錯誤的級別 。 代碼如圖

PHP如何自定義錯誤處理?



07 運行后,看下現在的報錯信息,如圖,成功觸發了錯誤處理 。

PHP如何自定義錯誤處理?





以上內容就是PHP如何自定義錯誤處理?的內容啦,希望對你有所幫助哦!

    猜你喜歡