Php 在laravel中返回经过身份验证的用户的最佳实践

Php 在laravel中返回经过身份验证的用户的最佳实践,php,laravel,eloquent,Php,Laravel,Eloquent,我在身份验证方面有点困惑,从5.2版开始我就是一个Laravel用户。但是在5.6版的这个场景中,我创建了一个中间件来检查经过身份验证的用户,注销功能非常完美,但是,我尝试使用我的中间件访问页面,它会返回 Trying to get property 'name' of non-object 因为我有一个函数,可以获取经过身份验证的用户的名称 我如何处理这种情况 我的中间件代码: public function handle($request, Closure $next) {

我在身份验证方面有点困惑,从5.2版开始我就是一个Laravel用户。但是在5.6版的这个场景中,我创建了一个中间件来检查经过身份验证的用户,注销功能非常完美,但是,我尝试使用我的中间件访问页面,它会返回

Trying to get property 'name' of non-object
因为我有一个函数,可以获取经过身份验证的用户的名称

我如何处理这种情况

我的中间件代码:

   public function handle($request, Closure $next) {
    if (Auth::check()) {
     return $next($request);
    }
    return redirect()->route('login');
}
在页面中:

{{Auth::user()->name}}

谢谢

您收到此错误是因为当前用户未经身份验证。您可以使用帮助器:

或:


谢谢你回答这个问题,但是。我可以访问该页面,即使我unauthenticated@RannieOllit嗯,这与问题无关。您的问题是关于您显示的错误,此代码修复了错误。
{{ optional(auth()->user())->name }}
{{ auth()->check() ? auth()->user()->name : 'Please login' }}