Laravel 5.1 blade, сравните переменную со многими значениями - PullRequest
0 голосов
/ 02 мая 2019

Я хочу сравнить переменную со многими значениями, например:

{{(
    ((Request::segment(1) == 'A' || Request::segment(1) == 'B' || Request::segment(1) == 'ETC' || ... ) && $menu->link == 'XXX') ? 'visible' : ''
)}}

Есть ли способ провести сравнение с чем-то вроде этого?

{{(
    ((Request::segment(1) == my_values(A,B,C,E,...,ETC) && $menu->link == 'XXX') ? 'visible' : ''
)}}

Я могу 't редактировать значения из контроллера

Ответы [ 3 ]

1 голос
/ 02 мая 2019

Как насчет использования PHP in_array, как объяснено здесь ?

{{(
   ((in_array(Request::segment(1), ['A','B','C','E',...,'ETC']) && $menu->link == 'XXX') ? 'visible' : ''
)}}
1 голос
/ 02 мая 2019

Или вы можете использовать метод in_array в PHP.

{{( ((in_array(Request::segment(1), ['A', 'B', 'C', 'ETC']) && $menu->link == 'XXX') ? 'visible' : '' )) }}

1 голос
/ 02 мая 2019

Вы можете использовать contains() функцию коллекции Laravel.

{{(
    ((collect(my_values(A,B,C,E,...,ETC))->contains(Request::segment(1)) && $menu->link == 'XXX') ? 'visible' : ''
)}}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...