Laravel

Laravel コレクションの空判定はisEmpty()メソッドを使おう!

タクマ

こんにちは!タクマです。

31歳未経験からエンジニア転職に成功し、

2021年3月より都内の受託開発企業にてサーバーサイドエンジニアとして働いており、

PHP/Laravel、Vue.jsを使用し開発をしています。

今回はLaravelのコレクションの空判定をするメソッドを紹介します。

コレクションの空判定方法がわからない

ifで空判定しようとしたけどできない

という方はぜひ最後まで読んでください!

結論

コレクションの空判定はisEmpty()メソッドを使えばできます!

$collect = collect([]); // 空のコレクションを作成


// ddでデバッグすると空なのが確認できる
dd($collect);
Illuminate\Support\Collection {#1789 ▼
  #items: []
}


$collect->isEmpty(); // true

逆に空ではない判定はisNotEmpty()を使えばできます。

$collect = collect([]);


$collect->isNotEmpty(); // false

空判定できないメソッド

if isset empty is_null メソッドではコレクションの空判定はできません。

$collect = collect([]);



if($collect)       // true

isset($collect)    // true

empty($collect)    // false

is_null($collect)  // false


//全て空ではないという判定がされてしまう

僕は最初の頃ifissetメソッドで空判定をしようとし、「あれ、空なのになぜtrueになるんだ?」と思いましたが、Laravelはそういうものなんだと思うことにしました。笑

さいごに

いかがでしたでしょうか?

コレクションの空判定について理解できましたでしょうか?

ご質問やご指摘等ある方はコメントしていただければ返信させていただきます。

これからもエンジニアの方、プログラミング初学者の方に役に立つ記事を更新していきますのでよろしくお願いします!

Twitterでも情報発信をしていますので、よかったらフォローをお願いします(^^)

Webエンジニア
タクマ
埼玉県出身の33歳

新卒で入社した専門商社で8年間営業職として勤務

30歳からプログラミングを始め31歳でWebエンジニアに転職成功

受託開発企業での開発を1年弱経験したのち、現在はスタートアップの自社開発企業で開発に従事している
\ Follow me /

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA