请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

throw new BannerMissException(); 错误

图片描述

exceptionHandler.php
use Exception;
use think\exception\Handle;
use think\Request;

class ExceptionHandler extends Handle
{
public $code;
public $errorCode;
public $msg;
public function render(Exception KaTeX parse error: Expected '}', got 'EOF' at end of input: … { if (e instanceof BaseException) {
$this->code = $e->code;
$this->errorCode = $e->errorCode;
$this->msg = $e->msg;
} else {
switch=config(′appdebug′);if(switch = config('app_debug'); if (switch=config(appdebug);if(switch) {
parent::render($e);
}else{
$this->code = 500;
$this->errorCode = 999;
$this->masg = ‘服务器内部错误’;
}
}
$result = [‘errorCode’ => $this->errorCode, ‘msg’ => this−>msg,′requesturl′=>Request::instance()−>url(),];returnjson(this->msg, 'request_url' => Request::instance()->url(),]; return json(this>msg,requesturl=>Request::instance()>url(),];returnjson(result, $this->code);
}
}

BaseException.php
use think\Exception;

/**

  • Class BaseException
  • @package app\lib\exception
  • 重写 全局异常处理基类: 用于统一描述错误信息:错误码、错误信息、当前URL
  • 主要用于向客户端返回的错误信息,用于由于客户端的操作造成的错误,要向用户显示具体的错误信息(属于第一种错误类型)
    */
    class BaseException extends Exception
    {
    //HTTP状态码
    public $code = 400;
    //自定义状态码
    public $errorCode = 10000;//通用错误
    //自定义状态码信息
    public $msg = ‘参数错误’;
    }

BannerMissException.php
class BannerMissException extends BaseException
{
//HTTP状态码
public $code = 404;

//自定义状态码
public $errorCode = 40000;//通用错误

//自定义状态码信息
public $msg = '请求Banner不存在';

}

api/controller/v1/Order.php

use app\api\model\builder\Order as OrderBuilderModel;
use app\api\validate\IDMustBePostiveInt;
use app\lib\exception\BannerMissException;
use app\lib\exception\OrderMimssEaception;

class Order
{
public function getOrder($id)
{
//AOP 面向切面编程
(new IDMustBePostiveInt())->goCheck();
result=OrderBuilderModel::get(result = OrderBuilderModel::get(result=OrderBuilderModel::get(id);
result=null;if(!result = null; if (!result=null;if(!result) {
throw new BannerMissException();
}
return json($result);
}
}

正在回答 回答被采纳积分+3

6回答

提问者 读你00000000 2019-03-18 04:25:46

复制出来就显示这样了

0 回复 有任何疑惑可以回复我~
提问者 读你00000000 2019-03-18 04:25:30

public function render(Exception KaTeX parse error: Expected '}', got 'EOF' at end of input: … { if (e instanceof BaseException) {

KaTeX parse error: Expected '}', got 'EOF' at end of input: …  这里原来是$e的

0 回复 有任何疑惑可以回复我~
  • 7七月 #1
    这提示你少了括号啊。
    回复 有任何疑惑可以回复我~ 2019-03-18 04:27:48
  • 提问者 读你00000000 #2
    好的,我再检查一下
    回复 有任何疑惑可以回复我~ 2019-03-18 04:31:05
7七月 2019-03-18 04:11:41

https://img1.sycdn.imooc.com//szimg/5c8ea9f000017dfe17660634.jpg这到底是什么?我都看不出来这是源代码还是异常啊?

0 回复 有任何疑惑可以回复我~
提问者 读你00000000 2019-03-17 18:46:11

我也不知道这是啥问题

0 回复 有任何疑惑可以回复我~
  • 7七月 #1
    我看好像是语法的问题啊。
    回复 有任何疑惑可以回复我~ 2019-03-18 00:54:14
Strin 2019-03-17 18:44:36

我的也是 throw后面接 new出来的Exception就会出错 而接Exception $e 中的$e就不会出错 请教一下为什么

0 回复 有任何疑惑可以回复我~
  • 7七月 #1
    他这个问题,很明显是语法的问题。估计是多了一些不符合PHP规范的语法。
    回复 有任何疑惑可以回复我~ 2019-03-18 00:53:55
7七月 2019-03-16 14:03:15

这贴的是什么。。。你看下是不是这个代码本身就有语法错误啊?

0 回复 有任何疑惑可以回复我~
  • 提问者 读你00000000 #1
    和视频反复对了好几次,还是这个问题额
    回复 有任何疑惑可以回复我~ 2019-03-18 03:21:45
  • 提问者 读你00000000 #2
    贴的是错误异常处理哪里的
    回复 有任何疑惑可以回复我~ 2019-03-18 04:12:55
  • 提问者 读你00000000 #3
    如果说这里有语法错误的话,在找它子级或方法,应该是找不到的额。但我点击哦new后面的可以跳到对应的类中的额
    回复 有任何疑惑可以回复我~ 2019-03-18 04:15:44
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信