Метод user
Метод user класса Auth предназначен для получения текущего аутентифицированного пользователя. Метод возвращает экземпляр модели пользователя, если пользователь вошёл в систему, или null, если пользователь не аутентифицирован. Метод удобно использовать в контроллерах, представлениях и других частях приложения для получения данных о текущем пользователе.
Синтаксис
<?php
Auth::user();
?>
Пример
Давайте получим текущего аутентифицированного пользователя в контроллере и выведем его имя:
<?php
namespace AppHttpControllers;
use IlluminateSupportFacadesAuth;
class UserController extends Controller
{
public function profile()
{
$user = Auth::user();
if ($user) {
echo $user->name;
} else {
echo "User not authenticated";
}
}
}
?>
Результат выполнения кода:
"John Doe"
Пример
Давайте получим текущего пользователя в Blade-шаблоне и выведем его email, если он аутентифицирован:
@if (Auth::check())
<p>User email: {{ Auth::user()->email }}</p>
@else
<p>Please log in</p>
@endif
Результат выполнения кода:
<p>User email: john@example.com</p>
Пример
Давайте получим ID текущего пользователя с помощью метода user:
<?php
use IlluminateSupportFacadesAuth;
$user = Auth::user();
if ($user) {
echo $user->id;
} else {
echo "User not found";
}
?>
Результат выполнения кода:
"42"
Пример
Давайте проверим, является ли текущий пользователь администратором, используя метод user:
<?php
use IlluminateSupportFacadesAuth;
$user = Auth::user();
if ($user && $user->role === 'admin') {
echo "Welcome administrator";
} else {
echo "Access denied";
}
?>
Результат выполнения кода:
"Welcome administrator"