Ответ 1
Вы можете использовать этот код в ларавом лезвии:
{{ $var === "hello" ? "Hi" : ($var ==="howdie ? "how" : "Goodbye") }}
Есть ли синтаксис для указания inline if и else if в шаблоне blade-сервера Laravel?
Обычно синтаксис для выражения if и else:
{{ $var === "hello" ? "Hi" : "Goodbye" }}
Теперь я хотел бы включить else if statement, возможно ли это?
{{ $var === "hello" ? "Hi" : "Goodbye" else if $var ==="howdie ? "how" : "Goodbye""}}
Вы можете использовать этот код в ларавом лезвии:
{{ $var === "hello" ? "Hi" : ($var ==="howdie ? "how" : "Goodbye") }}
помните, что не каждый короткий код является хорошим. в вашем примере нет единственного способа попасть в этот else if
, потому что вы говорите
if($var === "hello")
{
// if the condetion is true
"Hi";
}
else
{
// if the condetion is false
"Goodbye";
}
// error here
else if($var ==="howdie")
{ "how"; }
else
{ "Goodbye"; }
Неправильно вы не можете использовать два else
соответственно. у вас есть структура ваших условий, таких как
if (condition) {
# code...
} elseif (condition) {
# code...
} else {
}
то же самое в тройных операторах
(condition) ? /* value to return if first condition is true */
: ((condition) ? /* value to return if first condition is true */
: /* value to return if condition is false */ );
и остерегайтесь (
, )
во втором условии.
и, как вы видите, ваш код просто будет сложным, нечитаемым и трудно проследить. поэтому используйте if else if
, если у вас более одного переключения условий
и пересмотреть свою логику.
{{ ($var === "hello") ? "Hi" : ($var ==="howdie") ? "how" : "Goodbye""}}
Попробуйте mario!
Я считаю, что это два оператора if else в одной строке. Я не могу представить, как сделать его встроенным, но я бы сделал что-то вроде этого.
@if($var=="hello" || $var=="Hi")
{{$var === "hello" ? "Hi" : "Howdie"}}
@else
{{"Goodbye"}}
@endif
<select id="days" class="Polaris-Select__Input" name="days" aria-invalid="false">
<option value="10" @if($settingsData->days == "10") selected @endif >at 10 Days</option>
</select>
@if ($settingsData-> дней == "10") выбрано @еще не выбрано @endif