Blade:为 foreach() 提供的参数无效

Blade: Invalid argument supplied for foreach()

有时 $structures 数组有空值,其他变量的相同代码工作正常,但在这种情况下不是。

@foreach($structures ?? [] as $item) {{ $item }} @endforeach

我通过在 $structures ?? [] 表达式周围添加 () 解决了这个问题。

@foreach(($structures ?? []) as $item) {{ $item }} @endforeach

使用forelse代替foreach

@forelse ($structures as $item)
{{ $item }}
@empty 
No Items found.
@endforelse

forelse 检查条件如下。

@if ($structures->count())
  @foreach ($structures as $item)  
 {{ $item }}
  @endforeach
@else
No Items found.
@endif