yii2默認error動作默認由site控制器下的error動作來處理, 對應(yīng)的錯誤視圖頁面是@app/views/site/error.php頁面.
return [ ....其它配置 'components' => [ ...其它配置 'errorHandler' => [ 'errorAction' => 'site/error', ], ] ]
siteController中重寫了actions()方法,指定error動作由yiiwebErrorAction來處理,默認情況下錯誤視圖頁面error.php會繼承布局文件,我們可以通過修改actions()方法來修改error.php頁面的布局文件。
同時為了針對每個控制器設(shè)置其error動作,可以定義個基類BaseController繼承yiiwebController, 然后其他控制器繼承基類, 在基類中重寫actions方法如下:
public function actions() { return [ 'error' => [ 'class' => 'yiiwebErrorAction', 'layout' => false, ], ]; }
class指定處理錯誤信息的類, 當(dāng)出現(xiàn)error動作的時候由yiiwebErrorAction類接管, layout指定錯誤顯示頁面使用布局文件的情況,查看源碼:
返回錯誤提示信息name(報錯名字,如404),message(簡單信息),exception(錯誤對象)
相關(guān)文章教程推薦:yii框架教程