5 php foreach blade laravel-5.2
基本上,我将一个变量员工从StaticPagesController传递给about.blade.php. 当循环通过@foreach时,我希望代码知道它是否是最后一个元素,因此它将输出员工的名字而不用逗号.这些都不会奏效.
1.
@foreach($employees as $employee)
@if($employee == end($employees))
{{ $employee->first_name }} {{ $employee->last_name }}
@else
{{ $employee->first_name }} {{ $employee->last_name }},
@endif
@endforeach
enter code here
Run Code Online (Sandbox Code Playgroud)
2.
@foreach($employees as $employee)
@if($employees->last())
{{ $employee->first_name }} {{ $employee->last_name }}
@else
{{ $employee->first_name }} {{ $employee->last_name }},
@endif
@endforeach
Run Code Online (Sandbox Code Playgroud)
从Laravel 5.3开始就更容易了:@foreach中有一个$ loop变量:
https://laravel.com/docs/5.3/blade#the-loop-variable
@foreach($employees as $employee)
@if ($loop->last)
// This is the last iteration.
{{ $employee->first_name }} {{ $employee->last_name }}
@else
{{ $employee->first_name }} {{ $employee->last_name }},
@endif
@endforeach
Run Code Online (Sandbox Code Playgroud)
最短的替代方案可以是:
@foreach($employees as $employee)
{{ $employee->first_name }} {{ $employee->last_name }}{{ ($loop->last ? '' : ',') }}
@endforeach
Run Code Online (Sandbox Code Playgroud)
注意$ loop-> first也存在.