【Laravel】foreachで奇数・偶数処理を行う方法

foreachの繰り返し処理でodd(奇数)、even(偶数)のそれぞれの値を取得したい時が時々ありますが、
Laravelでは奇数・偶数を簡単に処理することができます。

PHPで行う場合

奇数、偶数のループを取得する方法は色々ありますが、一般的には下記のようなコードになるかと思いますが、LaravelのBladeでは変数の定義ができません。

$odd = array();
$even = array();
foreach ($array as $key => $value) {
    if ($key % 2 == 0) {
        $even[] = $value;
    }
    else {
        $odd[] = $value;
    }
}

Laravelの$loop変数を使う

LaravelではBladeのforeach内で使える$loopと言う変数を使うとループ回数を簡単に取得することができます。

@foreach($values as $key => $value)
    @if($loop->iteration % 2 == 0)
        // 偶数
    @else
        // 奇数
    @endif
@endforeach

※参考 https://qiita.com/fukulingo/items/710edce04e64324f5f4c

コメントを残す

入力エリアすべてが必須項目です。メールアドレスが公開されることはありません。

内容をご確認の上、送信してください。