我有以下代码:
@foreach ($artists as $artist)
<td>{{ $artist->id }}</td>
<td>{{ $artist->title }}</td>
<td>
@foreach ($artist->tags as $tag)
{{ $tag->id }}
@endforeach
</td>
@endforeach
如何使用$tag->id
使用逗号正确输出每个implode()
?
试图这样做:
@foreach ($artist->tags as $tag)
<?php $arr[] = $tag->id ?>
@endforeach
{{ implode(", ", $arr) }}
但由于2 foreach()
我正在重复标记。
答案 0 :(得分:2)
您可以在此处使用Laravels lists()
功能。它将生成所有标记ID的数组:
{{ implode(', ', $artist->tags->lists('id')) }}
答案 1 :(得分:1)
我认为您的问题是在添加标签之前,您没有清理阵列。在您输入第二个foreach之前,请创建一个新的arr []。
答案 2 :(得分:1)
您可以覆盖$arr
中的密钥:
@foreach ($artist->tags as $tag)
<?php $arr[$tag->id] = $tag->id; // <-- HERE ?>
@endforeach
{{ implode(", ", $arr) }}