SoH*_*oHo 16 php laravel-5.1 laravel-blade
我在Blade模板中有一个@foreach循环,需要对集合中的第一个项目应用特殊格式.如何添加条件以检查这是否是第一项?
@foreach($items as $item)
<h4>{{ $item->program_name }}</h4>
@endforeach`
Run Code Online (Sandbox Code Playgroud)
Sha*_*ews 57
Laravel 5.3提供了一个$loop变量in foreach循环.
@foreach ($users as $user)
@if ($loop->first)
This is the first iteration.
@endif
@if ($loop->last)
This is the last iteration.
@endif
<p>This is user {{ $user->id }}</p>
@endforeach
Run Code Online (Sandbox Code Playgroud)
文档:https://laravel.com/docs/5.3/blade#the-loop-variable
Lia*_*ire 10
苏荷区,
最快的方法是将当前元素与数组中的第一个元素进行比较:
@foreach($items as $item)
@if ($item == reset($items )) First Item: @endif
<h4>{{ $item->program_name }}</h4>
@endforeach
Run Code Online (Sandbox Code Playgroud)
或者,如果它不是关联数组,您可以根据上面的答案检查索引值 - 但如果数组是关联的,那么这将不起作用.
从 Laravel 7.25 开始,Blade 现在包含一个新的 @once 组件,因此您可以这样做:
@foreach($items as $item)
@once
<h4>{{ $item->program_name }}</h4> // Displayed only once
@endonce
// ... rest of looped output
@endforeach
Run Code Online (Sandbox Code Playgroud)
只取键值
@foreach($items as $index => $item)
@if($index == 0)
...
@endif
<h4>{{ $item->program_name }}</h4>
@endforeach
Run Code Online (Sandbox Code Playgroud)
Laravel 7. * 提供了一个first()辅助函数。
{{ $items->first()->program_name }}
Run Code Online (Sandbox Code Playgroud)
*请注意,我不确定这是什么时候引入的。因此,它可能不适用于早期版本。
| 归档时间: |
|
| 查看次数: |
24406 次 |
| 最近记录: |