Php 如何使登录的用户对象可用于Laravel 5.3中的所有视图
我希望能够在我的视图中获取登录用户的详细信息。例如Php 如何使登录的用户对象可用于Laravel 5.3中的所有视图,php,laravel,laravel-5,Php,Laravel,Laravel 5,我希望能够在我的视图中获取登录用户的详细信息。例如{{$user->email} 这是我的Controller.php: public $view_data = array(); public function __construct() { $this->middleware('auth'); $this->view_data['user'] = Auth::user(); } $user在我的视图中返回NULL。我遗漏了什么吗?默认情况下,它已通过以下方式在所
{{$user->email}
这是我的Controller.php
:
public $view_data = array();
public function __construct()
{
$this->middleware('auth');
$this->view_data['user'] = Auth::user();
}
$user
在我的视图中返回NULL
。我遗漏了什么吗?默认情况下,它已通过以下方式在所有视图中可用:
Auth::user()
auth()->user()
您可以通过以下方法直接访问视图中的loggedIn用户:
{!! Auth::user()->name !!}
{!! auth()->user()->name !!}
{!! access()->user()->name !!}
{{\Auth::user()}}
{{\Auth::user()['email']}Laravel在您登录后已提供此服务。只要写下:
{{ Auth::user()->email }}
{{ auth()->user()->email }}
{{ $user->email }}
{{ $user->username }}
您还可以对所有视图使用ServiceProvider:
创建服务提供者:php artisan make:provider UserServiceProvider
去
app\providers\UserServiceProvider.php
现在,用户对象可用于所有视图,您只需编写:
{{ Auth::user()->email }}
{{ auth()->user()->email }}
{{ $user->email }}
{{ $user->username }}
他说的是在视图中访问它,在这种情况下,
auth()->user()->:field:
就足够了。查看一下