Условие последней итерации в цикле foreach

Очень часто сталкиваюсь задачей вывести список элементов массива, например через запятую. В этом случае, как правило, используется стандартная функция PHP implode() или её псевдоним join().

Но иногда все же удобнее использовать условие последней интерации непосредственно в цикле foreash.

Условие пишется чаще всего так:

$cnt = 0;
foreach((get_the_category()) as $category) {
 if ($cnt>0) echo ',';
 echo '<a href="'.get_category_link($category->term_id ).'">'.$category->cat_name.'</a>';
 ++$cnt;
}

Ну и напоследок та-же задача с использование функции join().

$cnt = 0;
$a=array();
foreach((get_the_category()) as $category) {
 $a[] = '<a href="'.get_category_link($category->term_id ).'">'.$category->cat_name.'</a>';
}
echo join(',',$a);



Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>