Условия @if Blade
С помощью Blade директивы @if
можно задавать условия в представлениях. Давайте посмотрим на примере. Пусть из действия в представление передается переменная, определяющая, авторизован пользователь или нет:
<?php
return view('post.show', [
'isAuth' => true
]);
Покажем текст только для авторизованного пользователя:
@if ($isAuth)
вы авторизованы
@endif
А тепер покажем текст для неавторизованного пользователя:
@if (!$isAuth)
вы не авторизованы
@endif
Директива @else
Следующий пример демонстрирует работу директивы @else
, работающий подобно своему PHP аналогу:
@if ($isAuth)
вы авторизованы
@else
вы не авторизованы
@endif
Директива @elseif
Следующий пример демонстрирует работу директивы @elseif
, работающей подобно своему PHP аналогу:
@if ($num > 0)
больше нуля
@elseif ($num === 0)
ноль
@else
меньше нуля
@endif
Директива @unless
Директива @unless
представляет собой команду пока не и не имеет аналога в PHP. Рассмотрим работу данной директивы на практическом примере. Пусть в переменной $isAuth
хранится пометка об авторизации пользователя. В том случае, если пользователь еще не авторизован, выведем ему сообщение об этом, пока используя директиву @if
:
@if (!$isAuth)
вы еще не авторизованы
@endif
Как вы видите, перед именем переменной нам приходится писать восклицательный знак, чтобы сделать отрицание. Можно избавится от этого восклицательного знака, воспользовавшись директивой @unless
, которая сама по себе является отрицанием:
@unless ($isAuth)
вы еще не авторизованы
@endunless