laravel新建异常类

时间:2021-09-20
本文章向大家介绍laravel新建异常类,主要包括laravel新建异常类使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

1.新建异常类 php artisan make:exception ApiException

<?php

namespace App\Exceptions;

use Exception;
use Throwable;

class ApiException extends Exception
{
    public function __construct($message = "", $code = 400, Throwable $previous = null)
    {
        parent::__construct($message, $code, $previous);
    }

    public function render()
    {
        return response()->json([
            'msg' => $this->message,
            'code' => $this->code,
        ], $this->code);
    }
}

2.方法中使用异常类

引入异常类
use App\Exceptions\ApiException;


方法中抛出异常
throw new ApiException('该商品不存在');

3.如果有使用dingo,需要在服务提供者中屏蔽部分信息,找到app\Providers\AppServiceProvider.php中的boot方法,添加屏蔽代码

public function boot()
{
    Schema::defaultStringLength(200);

    //有使用dinggo的话,添加如下代码屏蔽部分不需要显示内容
    app('api.exception')->register(function (\Exception $exception) {
        $request = Request::capture();
        return app('App\Exceptions\Handler')->render($request, $exception);
    });
}

参考:六星教育-大神进阶班第一期-00.大神进阶第一期\01.框架专题\01-06-laravel项目实战\10-自定义异常处理

原文地址:https://www.cnblogs.com/clubs/p/15313917.html