时间:2021-07-01 10:21:17 帮助过:31人阅读
好多同学说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中文网!
相关推荐:
如何在yii2-wx中使用try_catch
以上就是Yii无法捕获到异常的解决方法的详细内容,更多请关注Gxl网其它相关文章!