PHP の foreach でループの最初と最後を判定する

WEB+DB開発
記事内に広告が含まれています。

Smarty の foreach では最初と最後を判定できるプロパティ(first, last)がありますが、PHP の foreach にはありません。あったらいいのに。仕方ないので以下のように判定しています。

foreach ($array as $key => $val) {
    if (array_key_first($array) === $key) {
        echo 'ループの最初です';
    }
    if (array_key_last($array) === $key) {
        echo 'ループの最後です';
    }
}

WordPress で親カテゴリーのリンクのみ出力したい・カテゴリー名の間にセパレーターを表示したい・でも最後のカテゴリー名の後はセパレーターを表示したくない時など、the_category() では対処できない場合に使っています。

タイトルとURLをコピーしました