缘起
跟随上一章的脚步,上一章中,我们主要讲解了在用户发起请求,解析请求,服务器反馈请求以及session的一些知识点,这过程中,难免会遇到一些问题,比方说数据库查询失败,用户输入导致脚本出错,网络问题等等突发情况,对于突发情况,做过软件的一般都知道,会有错误处理和日志去记录下这个过程,同样的,Yii也提供了类似的功能帮助我们去抓住错误,记录错误,并且对相应错误做出对应处理。
错误处理
Yii 内置了一个error handler错误处理器。
所有非致命PHP错误(如,警告,提示)会转换成可获取异常。
抛出异常
use yii\web\NotFoundHttpException; throw new NotFoundHttpException();
对于可能产生异常的地方,我们要使用try...catch...
use Yii; use yii\base\ErrorException; try { 10/0; } catch (ErrorException $e) { Yii::warning("Division by zero."); }
error handler 错误处理器默认启用。