我有问题;这是我控制器的一部分;它显示了我想要的结果。
$angebotDetails = Angebot::where('firma',$id)->get();
但是如果有空白,那么什么也没显示,因为有空白。
现在我想如果它们为空,它应该向我显示一些文本,但我不明白。
我有一个foreach,向我展示了我所有的结果;我像这样尝试过isEmpty
:
@foreach($angebotDetails as $key => $angebotDetail)
@if($angebotDetails->isEmpty)
<h4>Wir haben momentan leider keine Angebote für Dich.</h4>
@endif
或
if(empty($angebotDetails)
或=== 0
或=== '0'
或= null
但是它什么也没显示给我,我不知道为什么。
如果我尝试dd($angebotDetails)
会向我显示
#items: []
如果有东西显示给我
#items: array[1]
答案 0 :(得分:0)
$angebotDetails
是一个数组,因此您可以使用count
或sizeof
@if(count($angebotDetails) === 0)
//它是一个空数组
@else
//它不为空
@endif
答案 1 :(得分:0)
您可以使用forelse
指令
@forelse ($angebotDetails as $key => $angebotDetail)
//
@empty
<h4>Wir haben momentan leider keine Angebote für Dich.</h4>
@endforelse
您用来检查$angebotDetails
是否为空的代码将不起作用。仅当foreach
包含某些结果时,您的代码才会进入$angebotDetails
循环指令,否则它将跳过foreach
指令中的所有代码
答案 2 :(得分:0)
像这样在您的foreach之前检查$ angebotDetails是否为空:
@if (count($angebotDetails)) // $angebotDetails is NOT empty
@foreach($angebotDetails as $key => $angebotDetail)
// do something with $angebotDetail
@endforeach
@elseif // $angebotDetails IS empty
<h4>Wir haben momentan leider keine Angebote für Dich.</h4>
@endif