2015-11-02 83 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());'。 –