使用錯誤處理器
error handler 註冊成一個名稱為errorHandler應用元件, 可以在應用程式設定中設定它類似如下:
return [ 'components' => [ 'errorHandler' => [ 'maxSourceLines' => 20, ], ], ];
自訂錯誤顯示
error handler錯誤處理器根據常數YII_DEBUG的值來調整錯誤顯示,當YII_DEBUG 為true (表示在偵錯模式),錯誤處理器會顯示異常以及詳細的函數呼叫堆疊與來源代碼行數來幫助調試, 當YII_DEBUG 為false,只有錯誤訊息會被顯示以防止應用的敏感資訊洩漏。
(推薦教學:yii框架)
訊息: 如果異常是繼承 yii\base\UserException, 不管YII_DEBUG為何值,函數呼叫堆疊資訊都不會顯示, 這是因為這種錯誤會被認為是使用者產生的錯誤,開發人員不需要去修正。
error handler 錯誤處理器預設使用兩個視圖顯示錯誤:
#1、@yii/views/errorHandler/error.php: 顯示不包含函數呼叫堆疊資訊的錯誤資訊是使用, 當YII_DEBUG 為false時,所有錯誤都使用該視圖。
2、@yii/views/errorHandler/exception.php: 顯示包含函數呼叫堆疊資訊的錯誤訊息時使用。
可以設定錯誤處理器的 errorView 和 exceptionView 屬性 使用自訂的錯誤顯示視圖。
使用錯誤動作
使用指定的錯誤操作 來自訂錯誤顯示更方便, 為此,首先配置errorHandler元件的 errorAction 屬性, 類似如下:
return [ 'components' => [ 'errorHandler' => [ 'errorAction' => 'site/error', ], ] ];
更多程式設計相關內容,請關注php中文網程式設計入門欄位!
以上是yii2怎麼輸出錯誤訊息的詳細內容。更多資訊請關注PHP中文網其他相關文章!