web-dev-qa-db-fra.com

Ternaire dans Laravel Lame

Vous recherchez un opérateur ternaire pour les modèles de lames

@if(Auth::check()) ? yes : no @endif

Je ne peux pas sembler le faire fonctionner cela fonctionne

@if(Auth::check()) yes @else no @endif

supposons qu'il n'y ait pas grand chose pour cet exemple, juste curieux.

49
LeBlaireau

Vous êtes libre de l'utiliser avec {{ }}.

{{ Auth::check() ? 'yes' : 'no' }}
81
Marwelln

Cela marche:

{{ Auth::check() ? 'yes' : 'no' }}
47
Laurence

Je sais que cette question a été posée il y a un moment, mais cela peut aider quelqu'un.

Vous pouvez maintenant le faire dans Laravel 5.

{{ $variable or "default" }}

Laravel 5 Blade Templates

Modèle de lame Laravel 5.2

25
Bryce

de plus, voici un joli raccourci ?:, si vous avez besoin d’imprimer la valeur d’une variable ou si elle vide un texte par défaut

{{ $value ?: 'Default Value' }}
14
vitr

Pour Laravel 5 + php7, vous devriez utiliser l'opérateur de fusion nulle comme expliqué dans this Laravel Article de presse , comme suit:

{{ $value ?? "Fallback" }}

Avant l’opérateur de fusion nul, Blade a traité le même problème avec l’opérateur "ou", qui autorise une valeur par défaut lorsque la première valeur n’est pas définie, séparés par un "ou".

5
Chad