如何在Laravel 5.2中获取登录的用户ID

时间:2016-04-05 18:02:02

标签: php laravel laravel-5.1 laravel-5.2 laravel-routing

在我的应用程序中,我使用scaffolding方法快速创建身份验证。但是我在玩它时遇到了一个问题。实际上,我可以获得Auth::user()->name当前登录的用户用户名和其他详细信息,但我无法获取用户ID,我尝试使用Auth::user()->idAuth::id()获取ID,但所有徒劳的。有没有任何方法可以获取当前登录的用户ID?

我尝试了什么:

我在AuthServiceProvider中创建了一个变量,然后尝试在这个视图中获取ID

的ServiceProvider

$id = Auth::id();
view()->share('id', $id);

查看

>  <li><a href="{{ url('/users/{!! $id !!}') }}"><i class="fa fa-btn
> fa-sign-out"></i>Profile</a></li>

下一步尝试查看:

<li><a href="{{ url('/users/{!!Auth::user()->id!!}') }}"><i class="fa fa-btn fa-sign-out"></i>Profile</a></li>

我想获取登录的用户ID,以便向每个用户显示他/她的个人资料。

2 个答案:

答案 0 :(得分:1)

您正在{!! !!}内进行{{ }}回音,但您无法对其进行嵌套。这就像拥有<?php echo <?php echo ... ?> ?>一样。嵌套打印也在引号内。假设您的id变量设置正确,请按以下方式调用:

<a href="{{ url('/users/' . $id) }}">

太容易读了,对吧? :)

答案 1 :(得分:0)

在视图中尝试以下操作: {{ Auth::user()->name }}

在Controller中尝试以下操作: \Auth::user()->id;