出现致命错误:
在laravel 5中,调用未定义的方法Illuminate\Foundation\Application::shutdown()
代码示例:
App::shutdown(
function () {
// do somthing
}
);
出现致命错误:
在laravel 5中,调用未定义的方法Illuminate\Foundation\Application::shutdown()
代码示例:
App::shutdown(
function () {
// do somthing
}
);
在laravel 5中,Application::shutdown方法已被删除,请注册“shutdown”回调函数。
https://github.com/laravel/framework/commit/62ae860596f17a80954c106ff179288205a74d78作为替代方案,您可以使用:
1)register_shutdown_function php原生函数
2)使用laravel中间件并实现Illuminate\Contracts\Routing\TerminableMiddleware接口
您需要实现:
public function terminate($request, $response)
TerminableMiddleware接口的函数。terminate函数将在脚本结束时调用。
例如,Laravel在Illuminate\Session\Middleware\StartSession类中使用TerminableMiddleware接口来在脚本结束时存储会话数据。
源代码示例:
public function terminate($request, $response)
{
if ($this->sessionConfigured() && ! $this->usingCookieSessions())
{
$this->manager->driver()->save();
}
}
TerminableInterface
而不是 TerminableMiddleware
。 - JavidLaravel 5仍然是beta软件,所以如果出现问题,请不要感到惊讶。您可能会收到该错误,因为
Application::shutdown(function(){});
在Laravel 4中,设置关闭事件处理程序的有效方法,但在Laravel 5中,这不是设置关闭事件监听器的有效方法。
这可能是因为Laravel 5正在向带注释的事件系统转移,或者可能是由于Laravel 5中的临时开发故障。