时间: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网其它相关文章!