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