Laravel 5 Blade内联if和else if语句

Laravel 5 Blade内联if和else if语句,laravel-5,laravel-blade,Laravel 5,Laravel Blade,在Laravel刀片模板中是否有指定内联if和else if语句的语法 通常,if和else语句的syntaxt是: {{ $var === "hello" ? "Hi" : "Goodbye" }} 我现在想包括其他如果声明,这是可能的吗 {{ $var === "hello" ? "Hi" : "Goodbye" else if $var ==="howdie ? "how" : "Goodbye""}} 我认为这是一行中的两个if-else语句。我无法想象如何使它内联,但我会这样做

在Laravel刀片模板中是否有指定内联if和else if语句的语法

通常,if和else语句的syntaxt是:

{{ $var === "hello" ? "Hi" : "Goodbye" }}
我现在想包括其他如果声明,这是可能的吗

 {{ $var === "hello" ? "Hi" : "Goodbye" else if $var ==="howdie ? "how" : "Goodbye""}}

我认为这是一行中的两个if-else语句。我无法想象如何使它内联,但我会这样做

@if($var=="hello" || $var=="Hi")
   {{$var === "hello" ? "Hi" : "Howdie"}}
@else
   {{"Goodbye"}}
@endif

记住,不是每个短代码都是好代码。在您的示例中,没有单一的方法可以点击此
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
s。你把你的条件组织成

if (condition) {
    # code...
} elseif (condition) {
    # code...
} else {

}
三元算子也是如此

(condition) ? /* value to return if first condition is true */ 
: ((condition) ? /* value to return if second condition is true */ 
: /* value to return if condition is false */ );
注意第二种情况下的

正如您所看到的,您的代码将变得棘手、不可读且难以跟踪。因此,如果您有多个条件切换,请使用
if-else if

并修改您的逻辑。

您可以在laravel blade中使用以下代码:

{{  $var === "hello" ? "Hi" : ($var ==="howdie ? "how" : "Goodbye") }}

在10天内@endif>选择天==“10”)

@if($settingsData->days==“10”)已选中@else未选中@endif

如果我要在其中添加HTML标记怎么办?例如“再见”。它显示标记。然后您使用
{!!code here!!}
作为打开和关闭标记,而不是
{{code here}
您需要的是一个嵌套的三元@莫波的答案是正确的。但是嵌套的三元组是不受欢迎的,它们很难阅读,如果你在3个月内收到这段代码,它将不会立即显示你试图做什么。将逻辑放入控制器中。
<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>