在 Laravel blade 中你可以这样做:
{{ $variable or 'default' }}
这将检查是否设置了变量。我从数据库中获取了一些数据,那些变量总是被设置的,所以我不能使用这个方法。
我正在寻找用于执行此操作的速记“刀片”功能:
{{ ($variable != '' ? $variable : '') }}
很难使用这篇文章或代码来做这件事,因为我不知道如何用链接或类似的东西来做:
<a href="{{ $school->website }}" target="_blank">{{ $school->website }}</a>
我试过了:
{{ ($school->website != '' ? '<a href="{{ $school->website }}" target="_blank">{{ $school->website }}</a>' : '') }}
但是,它不起作用。而且,我想让我的代码尽可能短;)
有人可以向我解释吗?
更新
我不使用 foreach 因为我从数据库中获取了一个对象(一所学校)。我将它从我的控制器传递到我的视图:
$school = School::find($id);
return View::make('school.show')->with('school', $school);
所以,我不想在每个 \( 变量(如 \)school->name)周围创建一个 @if($value != ''){}
。
原文由 Marten 发布,翻译遵循 CC BY-SA 4.0 许可协议
尝试这个: