ThinkPHP大部分情况异常都是自动抛出和捕获的,你也可以手动使用throw来抛出一个异常,例如:
// 使用think自带异常类抛出异常
<?php throw new \think\Exception('异常消息', 10006); ?>
手动捕获异常方式是使用try-catch,例如:
<?php try { // 这里是主体代码 } catch (ValidateException $e) { // 这是进行验证异常捕获 return json($e->getError()); } catch (\Exception $e) { // 这是进行异常捕获 return json($e->getMessage()); } ?>
HTTP 异常
可以使用\think\exception\HttpException类来抛出异常框架提供了一个abort助手函数快速抛出一个HTTP异常:
<?php namespace app\index\controller; class Index { public function index() { // 抛出 HTTP 异常 throw new \think\exception\HttpException(404, '异常消息'); } } ?>
系统提供了助手函数abort简化HTTP异常的处理,例如:
框架提供了一个abort助手函数快速抛出一个HTTP异常:
<?php namespace app\index\controller; class Index { public function index() { // 抛出404异常 abort(404, '页面异常'); } } ?>
文章评论(0)