Handler.php第25行出现Laravel FatalErrorException


Laravel FatalErrorException in Handler.php line 25

我在使用PHP7 的最新宅地上进行Laravel 5.1项目时,随机出现以下错误

FatalErrorException in Handler.php line 25:
Uncaught TypeError: Argument 1 passed to App'Exceptions'Handler::report() must be an instance of Exception, instance of TypeError given, called in /home/vagrant/Code/henau/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php on line 73 and defined in /home/vagrant/Code/henau/app/Exceptions/Handler.php:25
Stack trace:
#0 /home/vagrant/Code/henau/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(73): App'Exceptions'Handler->report(Object(TypeError))
#1 [internal function]: Illuminate'Foundation'Bootstrap'HandleExceptions->handleException(Object(TypeError))
#2 {main}
thrown

即使我撤消了导致它的工作,它仍然存在。这是由中的这段代码引起的

'Mail::send('emails.registered', $user, function ($m) {
    $m->to('miguel@dummyaddress.com')->subject('New Order');
});

在我看来,这个错误与代码没有直接关系。我见过其他人在完全不同的情况下遇到它。我在Homestead和PHP7的旧帖子中看到了它的弹出。有一个askubuntu线程,但它是离线的,所以我希望我们可以在这里重新开始讨论。

解决方案

这实际上是一个无法显示异常的错误。这是由于在需要PHP5.6.x 的旧Laravel项目上使用PHP7.x造成的

我的解决方案是为这个项目创建一个新的Homestead,并使用旧版本的laravel/homes 在该Homestead上安装php5.6

我在运行播种机Notflip时遇到了同样的问题。我使用Laravel框架5.0.34。我有这样的结构:

应用程序/型号/用户/(此处为我的用户型号)

在将我的用户模型移动到App目录后,我的种子程序问题得到了解决。

在对框架进行更改之前,请检查您的命名空间并考虑您的Laravel Framework版本。

希望它能有所帮助!

当laravel项目版本与您的本地安装版本不兼容或未配置时,就会出现这种情况。因此,laravel没有跟踪确切的错误,而不是在线显示确切的错误显示错误类型

我在laravel 5.1中也遇到了同样的问题。看完这个问题后,我发现我使用的是laravel v5.1.0,这似乎是错误的,所以将5.1.0改为5.1.*,并运行composer更新。这为我解决了问题。