這篇文章主要介紹了關於Yii無法捕獲到異常的解決方法,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下
好多同學說yii2捕獲不到異常,看了大部分問題,都是因為對catch的理解不正確造成的,例如問題:
//a文件: function a() { throw new \yii\web\HttpException('我是数据库异常'); } //b文件: use yii\db\Exception; try{ a(); } catch(Exception $e) { echo "捕获到异常了"; }
然而並沒有輸出捕獲到異常了
,因為catch
的Exception
實際指的是捕獲yii\db\Exception
拋出的例外,不能捕捉HttpException拋出的例外。
yii
中所有例外都是繼承於Exception
,所以有兩種改寫方法。
方法一:
catch(\yii\web\HttpException $e)
方法二:
catch(\Exception $e)
以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP中文網!
相關建議:
以上是Yii無法捕捉到異常的解決方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!