ThinkPHP6手动抛出和捕获异常使用

2021-05-13   阅读:5704   类型:后端   分类:TP6    标签: PHP TP6

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, '页面异常');
    }
}
?>
腾讯云11.11上云拼团Go,2核2G3M云服务器 28元/年

‘简忆博客’微信公众号 扫码关注‘简忆博客’微信公众号,获取最新文章动态
转载:请说明文章出处“来源简忆博客”。http://www.tpxhm.com/adetail/689.html

×
觉得文章有用就打赏一下文章作者
微信扫一扫打赏 微信扫一扫打赏
支付宝扫一扫打赏 支付宝扫一扫打赏

文章评论(0)

登录
简忆博客壁纸一
简忆博客壁纸二
简忆博客壁纸三
简忆博客壁纸四
简忆博客壁纸五
简忆博客壁纸六
简忆博客壁纸七
简忆博客壁纸八
头像

简忆博客
勤于学习,乐于分享

置顶推荐

打赏本站

如果你觉得本站很棒,可以通过扫码支付打赏哦!
微信扫码:你说多少就多少~
微信扫码
支付宝扫码:你说多少就多少~
支付宝扫码
×