Я показываю элементы массива @foreach($tags as $tag)$tag->@endforeach
. Результатом является tag1tag2tag3
. Каков возможный способ sho элементов массива в tag1,tag2,tag3
. И как не показывать ,
если в массиве есть только один элемент.
implode()
хорош для повторения простых данных. В реальном проекте вы обычно хотите добавить некоторый HTML или логику в цикл, используйте переменную $loop
, доступную с 5.3:
@foreach ($arrayOrCollection as $value) {{ $loop->first ? '' : ', ' }} <span class="nice">{{ $value->first_name }}</span> @endforeach
Использовать implode:
{{ implode(', ', $tags) }}
implode – это один из вариантов, или вы можете использовать соединение так же, как это
{{ join(', ', $tags) }}
Попробуйте первый или этот .. удачи
Попробуйте implode ():
$arr = ['one', 'two', 'three']; echo implode(',', $arr);
// вывод
one,two,three
Я считаю, что то, что вы ищете, может быть примерно таким: // иметь ваш массив в php-тегах // $ arr = ['one', 'two', 'three']; ? > // переходим через массив с foreach, и если счетчик массива не равен элементу las, тогда поместите coma после него
@foreach ($arr as $key => $value) @if( count( $arr ) != $key + 1 ) {{ $value }}, @else {{ $value }} @endif @endforeach