laravel:传递给 App\Exceptions\CustomException::report() 的参数 1 必须是 Exception 的实例,

2024-02-20

我在 Laravel 5.2 中创建了一个自定义异常类。它在 Laravel 5.4 之前都运行良好。

当我尝试使用相同的自定义异常与 laravel 5.5 一起使用时,它抛出以下错误。

Type error: Argument 1 passed to App\Utility\Exceptions\CustomException::report() must be an instance of Exception, none given, called in /var/www/html/bubbles/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php on line 102 {"exception":"[object] (Symfony\\Component\\Debug\\Exception\\FatalThrowableError(code: 0): Type error: Argument 1 passed to App\\Utility\\Exceptions\\CustomException::report() must be an instance of Exception, none given, called in /var/www/html/bubbles/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php on line 102 at /var/www/html/bubbles/app/Utility/Exceptions/CustomException.php:39)

这是我一直在使用的自定义异常类

<?php 

namespace App\Utility\Exceptions;

use Illuminate\Support\Facades\Lang;
use Exception;


class CustomException extends Exception  
{

    private $error_code = NULL;

    private $error_info = NULL;

    function __construct($type = NULL, $errors = NULL)
    {
        $this->error_code = $type['error_code'];
        $this->error_info = $errors;

        $message = Lang::get('exceptions.'.$this->error_code);

        parent::__construct($message, $type['code'], NULL);
    }


    public function report(Exception $exception)
    {
        parent::report($exception);
    }


    public function getErrorCode()
    {
        return $this->error_code;
    }


    public function getErrorInfo()
    {
        return $this->error_info;
    }
 }
 // end of class CustomException
 // end of file CustomException.php

有人能解释一下为什么它抛出的参数必须是异常实例吗?任何帮助将不胜感激。

我的编程环境 PHP7.0.1拉维尔5.5


Laravel 5.5 中的异常处理程序检查异常是否有报告方法,如果有,则让异常自行处理报告。这意味着处理程序将看到您的报告方法,并调用$e->report();,但是您的报告方法需要一个参数。

这是在处理程序::报告 https://github.com/laravel/framework/blob/5.5/src/Illuminate/Foundation/Exceptions/Handler.php#L101-L103.

您需要删除报告方法中的参数(它应该是报告本身;$this) 如果您想使用此功能,或者如果您不希望 Laravel 调用它(并失败),则重命名该方法。

相关的:Laravel 5.5 添加了对自定义异常报告的支持 https://laravel-news.com/custom-exception-reporting

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

laravel:传递给 App\Exceptions\CustomException::report() 的参数 1 必须是 Exception 的实例, 的相关文章

  • 如何解决 Laravel 8 UI 分页问题?

    我在尝试最近发布的 laravel 8 时遇到了问题 我试图找出变化是什么以及它是如何工作的 当我这样做时 我遇到了分页 laravel 8 UI 变得混乱的问题 不知何故它发生了 有人可以帮助我吗 或者经历过同样的事情 像这样我在 lar
  • Laravel - 急切加载 Eloquent 模型的方法(而不是关系)

    就像我们可以急切加载 Eloquent 模型的关系一样 有没有办法急切加载不是 Eloquent 模型的关系方法的方法 例如 我有一个 Eloquent 模型GradeReport它有以下方法 public function totalSc
  • Laravel 从 API 响应中删除标头值

    Laravel 应用程序版本 5 6 我希望从 API 响应中显示的 Cache Control 标头中删除 private 值 我有一个中间件添加 无缓存 和 无存储 值 response next request response gt
  • Laravel/00webhost 错误 404。在此服务器上找不到请求的 URL

    1 将我的文件上传到 000webhost 我将公用文件夹中的所有文件放置到公共 html然后我创建了一个名为laravel我在那里上传了所有其他文件 这是我的目录结构 laravel app 引导程序 config 公共 html 索引
  • 此集合实例上不存在属性 [子类别]

    第一次与eloquent关系 我正在尝试访问subcategory method但我收到这个错误 此集合实例上不存在属性 子类别 Laravel 新手 因此任何帮助将不胜感激 blade table class table thead tr
  • 如何将 Smarty 3 包含到 Laravel 4 中?

    我是 Laravel 的新手 所以仍在习惯这些概念 但是我有大约 10 年的使用 Smarty 的经验 所以我希望利用这一点 除了事实上 Blade 似乎缺乏太多我发现有用且在 Smarty 中开箱即用的功能 但无论如何除了这个问题的要点之
  • 在Windows上安装php Composer时出现错误

    在安装 Composer 以使用 Laravel 框架时 我遇到了一些错误 Download failed file get contents SSL operation failed with code 1 OpenSSL Error m
  • 同一路由组的多个前缀

    我正在为一所学校编写一个相当简单的网站 该网站有新闻 文章 视频剪辑 等 它的工作方式是在主页中我们向访问者展示一些课程 例如 gt math gt geography gt chemistry 用户在其中选择 1 网站内容会根据用户的选择
  • Laravel/Homestead - OSX - Vagrant 连接超时

    Problem 我正在尝试让 Laravel Homestead 在我的 Mac Book Air 上运行 我已按照以下指示进行操作http laravel com docs 4 2 homestead http laravel com d
  • laravel 模型保存后、保存前等回调

    Laravel 中是否有回调 例如 afterSave beforeSave etc 我进行了搜索 但一无所获 如果没有这样的事情 实施它的最佳方法是什么 Thanks 实现保存前后回调以扩展的最佳方法save 功能 这是一个简单的例子 c
  • Laravel Eloquent 预加载:加入同一个表两次

    我有一个users表和一个约会桌子 在约会表中 我有两个用户 ID customer id staff id 我想检索所有带有客户姓名和员工姓名的约会 users table id name appointments table id st
  • 将 Cloudinary 与 spatie/media-library Laravel 包一起使用

    有人使用 Laravel 包 spatie media library 和 Cloudinary 吗 我认为用 Flysystem 来实现它是微不足道的 我实际上使用 Cloudinary 作为带有 silvanite nova field
  • PhpStorm背景错误

    PhpStorm更新后 Blade模板中 script标签突出显示 在设置中 一切正常 为什么要突出显示这一点 检查语言注入中是否有非 内置 行 禁用您不认识的项目
  • Laravel 中间件将变量返回给控制器

    我正在对用户进行权限检查 以确定他们是否可以查看页面 这涉及首先通过一些中间件传递请求 我遇到的问题是 在将数据返回到视图本身之前 我在中间件和控制器中复制相同的数据库查询 这是设置的示例 路线 php Route get pages id
  • 更改 Laravel auth 表名称和列名称

    我想更改 laravel auth 表的表名和一些列名 将表名称从 用户 更改为 帐户 将表列名称从 名称 更改为 用户名 将表列名称从 email 更改为 email addr 将表列名称从 updated at 更改为 last upd
  • 如何在 Eloquent 中查询 JSON 列内的数组

    我已经在 Eloquent 中使用 JSON 成功完成了一些查询 但我不知道如何从数组内的对象中查询值 如下所示 在 属性 栏中 有 products media 1 code 4186GSB media 2 code 4186GSE 我想
  • Laravel 无法连接 Oracle

    我在用着耶吉拉 laravel oci8 https github com yajra laravel oci8用于 Oracle 与 Laravel 的连接 但我无法从客户端 PC 连接到 Oracle 服务器 showing this
  • Laravel htmlspecialchars() 期望参数 1 是我的项目中给出的字符串、对象?

    所以我正在尝试编写一个简单的网站表单 但它有这个 htmlspecialchars 错误 我尝试制作 message 但没有成功 有同样的错误 这是我的控制器
  • Laravel Blade:@extends('adminlte::page') 中参数中的双列是什么意思

    我想使用这个管理面板 https github com jeroennoten Laravel AdminLTE https github com jeroennoten Laravel AdminLTE 但我不明白这个语法 extends
  • 如何禁用vuejs中的按钮

    我想在填写表单时禁用该按钮 当所有输入都填满后 将使用 vuejs 和 laravel 框架启用按钮 我尝试通过简单地禁用按钮来实现这一点

随机推荐

  • 当启用面板向左滚动时,如何显示我的页面在左侧部分可见?

    IN this link http view jquerymobile com 1 3 2 dist demos widgets panels 我可以发现有一个覆盖选项 我可以在其中隐藏或显示右侧或左侧的面板 但我想在面板中显示面板 90
  • 在没有 .kv 文件的情况下使用屏幕管理器时出现一些问题

    我正在尝试使用 Pthon 和 kivy 制作应用程序 我正在研究其中的登录 注册部分 我试图为每个屏幕 登录和注册 创建一个屏幕 并将它们与 ScreenManager 连接 但没有 kv 文件 如果不可能 我想在 hte kv 文件中写
  • 如何在 emberjs 上使用单向绑定?

    我开始使用 ember 但我无法理解的一件事是如何使用单向绑定 请考虑以下代码 HTML JS var App Ember Application create Ap
  • 如何在 ASP.NET MVC 中获取其他用户的个人资料?

    我想在用户登录时设置带有时区的 cookie AccountController LogOn 似乎是执行此操作的最佳位置 但是 我还无法在那里读取用户的个人资料 因为我猜您只有在该方法完成时才能访问个人资料 因此 此代码返回一个空字符串 D
  • 如何使用pandas/python处理excel文件头

    我正在尝试阅读https www whatdotheyknow com request 193811 response 480664 attach 3 GCSE 20IGCSE 20results 20v3 xlsx https www w
  • C、C++ 和 Java 中的提升/重新排序:变量声明必须始终位于上下文的顶部吗?

    我读了一些关于提升和重新排序 https stackoverflow com questions 11430095 are hoisting and reordering the same thing 所以看来Java VM可能会选择提升一
  • 从 csv 文件中以嵌套字典格式分别计算男性和女性

    这段代码运行良好 并且以这种格式打印结果 我需要像这样的嵌套字典格式的结果 data year male Q1 1 Q2 1 Q3 1 Q4 1 female Q1 1 Q2 1 Q3 1 Q4 1 代码 import csv result
  • 自动调用常用初始化代码,无需创建__init__.py文件

    我的项目中有两个目录 project src scripts src 包含我精心编写的代码 scripts 包含一次性的 Python 脚本 我希望所有脚本都将 src 添加到其 sys path 中 以便它们可以访问 src 树下的模块
  • 如何使我的托管 NuGet 包支持 C++/CLI 项目?

    我制作了一个 NuGet 包 当我从 C 项目中使用它时 该包运行良好 它包含一个DLL在lib net40目录 并且 DLL 被添加为引用 现在 NuGet 支持 C 我如何实际修改我的包 以便可以将 DLL 添加为 C CLI 项目中的
  • 随机森林的可解释性

    我一直在使用sklearnRandomForestClassifier解决二元分类问题 对于特定的样本预测 我希望能够了解如何改变特征值来改变预测 例如 假设我有一个条目 size 15 width 8 height 13 该模型给了我一个
  • Google 地图上许多点的边界

    每个人 最近 我们遇到了谷歌地图边界的问题 我们收到了很多点 这些点是 new google maps LatLng lat lng 对象 然后 如何绘制或制作这个块的边界 或者如何找到边界上的点 LatLng 用于绘制多边形 有没有JS算
  • 标签需要 'drawable' 属性

    我正在尝试非常简单地设计一个Button 我只想在未按下时将其显示为带有文本的蓝色 而在单击时将其设置为带有蓝色文本的白色 我尝试使用样式和选择器来做到这一点 在我的布局中我有这个Button
  • .NET进程监视器

    有没有办法确定特定机器上次运行进程的时间 我可以使用以下内容来确定进程是否正在运行 但如果该进程已停止 则应用程序无法获取该进程 Process process Process GetProcessesByName processName
  • 如何禁用maven发布插件检查本地修改?

    我使用maven发布插件 在我的 pom 中存在和 Ant 任务 它自动修复一些具有附加信息的属性文件 此修复不应出现在 SCM 中 但 Maven 并没有以成功完成 因为错误 Cannot prepare the release beca
  • JavaScript 数组是否可以包含自身?

    在红宝石中 数组可以包含自身 https stackoverflow com questions 10606734 what are recursive arrays good for 使其成为一个递归数组 是否也可以将 JavaScrip
  • 为什么乘积被称为最小项而和被称为最大项?

    他们这样做有理由吗 我的意思是 在最小项之和中 您寻找输出为 1 的项 我不明白为什么他们称之为 minterms 为什么不使用 maxterms 因为 1 远大于 0 这背后是否有我不知道的原因 或者我应该直接接受而不问为什么 调用这些术
  • python OrderedDict 获取键索引

    Can OrderedDict获得关键职位 is like list of index test a b c d e test index b return 1 只有一行程序 例如 print list your ordered dict
  • laravel 哨兵重定向:: 不工作

    我正在尝试在我的应用程序中正确设置哨兵包 我可以登录和注销用户并保护路由 但我似乎无法获取redirect intended才能正常工作 我的理解是 用户在被定向到登录页面之前将被带回到他们最初调用的路线 目前它只是继续重定向到默认页面 在
  • 将元素附加到 Elasticsearch 字段

    如果类型不匹配 是否可以将一些元素附加到 elasticsearch 字段 如果我有这样的文档 counter 1 tags red 我想附加另一个标签字段 蓝色 如下所示 script source ctx source counter
  • laravel:传递给 App\Exceptions\CustomException::report() 的参数 1 必须是 Exception 的实例,

    我在 Laravel 5 2 中创建了一个自定义异常类 它在 Laravel 5 4 之前都运行良好 当我尝试使用相同的自定义异常与 laravel 5 5 一起使用时 它抛出以下错误 Type error Argument 1 passe