首页 > 解决方案 > {{ $data or 'Default' }} 在 laravel 刀片中不起作用

问题描述

我正在尝试在刀片文件中使用方便的快捷方式,它在屏幕上显示错误。

@extends('layout/master')
@section('content2')
<h1>
    {{date('d m y')}}   <br>
    @{{date('d m y')}}  <br>
    {{ isset($data) ? $data : 'Not' }}
    {{ $data or 'Default' }}
</h1>
@stop

标签: phplaravellaravel-blade

解决方案


在这种情况下您要使用的是空合并运算符,它是在 PHP7 中引入的。

表达式 (expr1) ?? (expr2) 如果 expr1 为 NULL,则计算为 expr2,否则计算为 expr1。特别是,如果左侧值不存在,此运算符不会发出通知,就像 isset() 一样。这对数组键特别有用。

因此,您可以像这样使用它:

{{ $data ?? 'Default' }}

推荐阅读