web-dev-qa-db-ja.com

laravel 5.4で現在のユーザーIDを取得する方法

Laravel 5.4でこのコードを使用して、現在ログインしているユーザーIDを取得しました

    $id = User::find(Auth::id());
    dd($id);

しかし、私は「ヌル」を受け取ります

20
Mansour hassan

user()メソッドを呼び出す必要があります。

$id = \Auth::user()->id;

または、モデルのみを取得する場合:

$user = \Auth::user();
25
Laerte

認証ファサードを介して認証済みユーザーにアクセスできます

use Illuminate\Support\Facades\Auth;

// Get the currently authenticated user...

$user = Auth::user();

// Get the currently authenticated user's ID...

$id = Auth::id();

Illuminate\Http\Request経由で認証済みユーザーにアクセスできます

use Illuminate\Http\Request;
public function update(Request $request)
{
     $request->user(); //returns an instance of the authenticated user...
     $request->user()->id; // returns authenticated user id. 
}

認証ヘルパー関数を介して:

auth()->user();  //returns an instance of the authenticated user...
auth()->user()->id ; // returns authenticated user id. 
23
Amitesh

ヘルパーの使用:

auth()->user()->id ;   // or get name - email - ...

ファサードの使用:

\Auth::user()->id ;   // or get name - email - ...

DIコンテナーの使用:

use Illuminate\Auth\AuthManager;
class MyClass
{
    private $authManager;
    public __construct(AuthManager $authManager)
    {
        $this->authManager = $authManager;
    }
}
7