前台ajax提交数据到后台数据库报异常
通过try catch 无法捕获到
try{
//逻辑处理....................
}catch (Exception $e) {
//捕获处理...................
}
因为catch的Exception实际指的是捕获yii\db\Exception抛出的异常,不能捕获HttpException抛出的异常。
yii中所有异常都是继承于Exception,所以有两种改写方法。
方法一:
catch(\yii\web\HttpException $e)
方法二:
catch(\Exception $e)
改为:
try{
//逻辑处理....................
}catch (/Exception $e) {
//捕获处理...................
}
解决
捕获Yii框架异常处理
博客内容讲述了在使用Yii框架时,遇到前台Ajax提交数据到后台数据库异常的问题。由于默认的Exception捕获无法覆盖所有类型的异常,特别是HttpException。文中提出了两种解决方案:一是专门捕获yiiwebHttpException;二是扩大捕获范围,直接捕获所有Exception。这两种方法都能有效解决异常捕获问题。
752

被折叠的 条评论
为什么被折叠?



