2015-11-02 80 views
3

如果Laravel 5.1用户登录就可以访问用户ID获取验证用户ID在Laravel

Auth::user()->id 

在我以前的应用程序(不laravel)当我在用户登录我注册一个会话的用户ID。我正在检查$ _SESSION ['user_id']是否可用。

我想问一下,当我打电话给Auth::user()->id它是否为每个请求生成和sql查询?如果这样做,这对性能不利。

我必须要注册像

Session::put('user_id', Auth::user()->id); 

为性能的一个新的会话。

或Auth:user() - > id是最佳选择吗?

回答

9

您可以改用Auth::id()。这从会议中抓住了它。如果会话中不存在,那么它将运行查询并从数据库中获取它。

+0

登录时,Laravel会为用户标识注册会话吗? –

+0

是的。当你登录时,它会触发这行代码:$ this-> updateSession($ user-> getAuthIdentifier());'。 –