Laravelのforeach処理で特定の値を除外する方法:@continueを使う

Laravel・PHP豆知識・トラブル対策

ビューファイル上のforeach処理で「これは除外したい」項目があったら、@ifの中で、@continueを使えばスキップできます。

@ifをいれず、@continue(条件式)でもOK。

「ある番号までは表示したい」という場合は、@breakが使えます。

実際のコードを使って紹介していきますね。

Laravel ビューファイルのforeachの処理で例外を入れる方法

たとえば、$testの名前を順番に表示したいとします。

ですが、ある条件に見合うものだけは表示したくない場合。

下記のように記述します。

@foreach($tests as $test)

@if(条件式)

@continue

@else

{{$test->name}}

@endif

@endforeach

条件式に合った部分はスキップされて、foreachの結果が表示されます。

なお@ifは省略して@continueだけでもOK。

上記のコードは、次のように記述できます。

@foreach($tests as $test)

@continue(条件式)

{{$test->name}}

@endforeach

じゅんこ
じゅんこ

むちゃくちゃ省エネ!

Laravel ビューファイルのforeachの処理を途中で止める方法

foreach処理を途中でとめたい場合には、@continueではなく、@breakを使います。

たとえば $test->idが3で処理を止めるときは、下記のようにします。

@foreach($tests as $test)

@if(条件式)

@break

@else

{{$test->name}}

@endif

@endforeach

もちろんこれも、@ifを抜かして、次のように省エネ記述が可能。

@foreach($tests as $test)

@break(条件式)

{{$test->name}}

@endforeach

じゅんこ
じゅんこ

省エネ機能を役立てていきましょう♪

コメント

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