【Laravel】Null値を判定する方法

こんにちは!CODE CLUB965のKです!

今回は、Laravelでnull値を判定する方法について書こうと思います。

公式ドキュメントを参考に記事を書いていますので、こちらも確認してもらえれば確実だと思います。

■ Laravel 8.x Bladeテンプレート
https://readouble.com/laravel/8.x/ja/blade.html

issetとemptyを使い分ける

null値を判定するには、以下の2つの方法があります。

・isset() を使う
・empty() を使う

それぞれの違いを見ていきたいと思います。

isset

判定対象が定義されておりかつ Null でない時に true を返します。

empty

名前のままなので覚えやすいと思いますが、判定対象がの時にtrueを返します。
空といいましたが、ここでいう空とは、「null」, 「0」, 「"0"」, 「false」,「 空の配列」になります。

以下の具体的な例を載せておきますので、違いを見て理解しましょう!

例1:定義されている、かつnullではない
$value = "Code Club";

isset($value);  // true
empty($value); //false

【補足】
Laravel5.4以降では、リクエストで「" "」 のような値が渡される場合、nullに変換されるようです。

例2:定義されているがnull
$value = null;

isset($value); // false
empty($value); // true
例3:定義されている、かつ値が0
$value = 0;

isset($value); // true
empty($value); // true
例4:定義されている、かつ空の配列
$value = [ ];

isset($value); // true
empty($value); // true

ざっとこんな感じです。

最後に

今回は、LaravelでNull値を判定する方法についてまとめましたが、issetとemptyの違いが分かったかと思います。

微妙な違いですが、判定内容が違いますのでそこを理解して使い分けましょう。

それでは、また!

Follow me!