php – Laravel – 获取@foreach的最后元素

基本上,我将一个变量员工从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

2.

@foreach($employees as $employee) 
    @if($employees->last())
        {{ $employee->first_name }} {{ $employee->last_name }}
    @else
        {{ $employee->first_name }} {{ $employee->last_name }}, 
    @endif
@endforeach

解决方法:

从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

最短的替代方案可以是:

@foreach($employees as $employee)
   {{ $employee->first_name }} {{ $employee->last_name }}{{ ($loop->last ? '' : ',') }}
@endforeach

请注意,$loop->首先也存在.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...