J'ai utilisé ce code dans Laravel 5.4 pour obtenir l'identifiant de l'utilisateur actuellement connecté
$id = User::find(Auth::id());
dd($id);
mais je reçois "Null"
Vous devez appeler la méthode user()
:
$id = \Auth::user()->id;
Ou, si vous voulez obtenir uniquement le modèle:
$user = \Auth::user();
Vous pouvez accéder à l'utilisateur authentifié via la façade Auth:
use Illuminate\Support\Facades\Auth;
// Get the currently authenticated user...
$user = Auth::user();
// Get the currently authenticated user's ID...
$id = Auth::id();
Vous pouvez accéder à l'utilisateur authentifié via une requête 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.
}
via la fonction d'assistance Auth:
auth()->user(); //returns an instance of the authenticated user...
auth()->user()->id ; // returns authenticated user id.
auth()->user()->id ; // or get name - email - ...
\Auth::user()->id ; // or get name - email - ...
use Illuminate\Auth\AuthManager;
class MyClass
{
private $authManager;
public __construct(AuthManager $authManager)
{
$this->authManager = $authManager;
}
}