在 foreach 循环中正确显示逗号和 space

Display comma and space properly in foreach loop

我需要在页面上显示标签,技巧是我不想在最后一个标签后显示逗号。

所以,我有这个:

@foreach($tag as $t)
   <a href="/search?q={{$t}}" class="tags">{{$loop->first ? '' : ', '}} {{$t}}</a>
@endforeach

我想要这个:

A, B, C, D

但是,我得到了这个:

A , B , C , D

项目和逗号之间多了space...

您需要检查循环是否在最后一项上,如果不是,则附加一个逗号和一个 space(而不是在前面加上一个逗号和一个 space)。

例如:

@foreach($tag as $t)
   <a href="/search?q={{$t}}" class="tags">{{$t}}{{$loop->last ? '' : ', '}}</a>
@endforeach

你得到双 spaces 的原因是因为你在 PHP 中回显了 space 并且还在两个花括号之间放置了 space 。

更新:虽然您的答案也可以,但这是一个偏好问题。在字母和逗号之间有一个额外的 space 的最初原因是由于花括号变量之间的间距。