ホームページ >バックエンド開発 >PHPの問題 >PHPを使ってnull値をチェックする方法(4つの方法)

PHPを使ってnull値をチェックする方法(4つの方法)

青灯夜游
青灯夜游オリジナル
2021-08-30 13:03:107495ブラウズ

前の記事「PHP 配列の学習: 空白要素または重複要素を削除する方法」では、empty() 関数を使用して値が空かどうかを判断できることを学びました。では、PHP で null 値をチェックするにはどのような方法があるのでしょうか?今回は、いくつかの一般的なメソッドについて学習します。必要に応じて学習してください~

今日の記事のテーマは、PHP を使用して値が空かどうかを検出することです。さて、早速本題に入りますが、一般的な方法をいくつか紹介します。

方法 1: empty()を使用します

empty 関数: 変数が「空」かどうかを検出します

初期化されていない変数、値は 0または false または空の文字列 "" または null 変数、空の配列、属性のないオブジェクトは TRUE と判断されます。

コード例を詳しく見てみましょう:

<?php
$a = &#39;test&#39;;
$b = array(&#39;key1&#39; => &#39;value1&#39;);
$class = new stdClass();

var_dump(empty($c)); // 输出 bool(true)
var_dump(empty($b[&#39;key2&#39;])); // 输出 bool(true)
var_dump(empty($class)); // 输出 bool(false)
var_dump(empty($class->test->test)); // 输出 bool(true)


class EmptyClass{};
$empty_class = new EmptyClass();
var_dump(empty($empty_class));// 输出 bool(false)
?>

出力結果:

PHPを使ってnull値をチェックする方法(4つの方法)

次の変数が考慮されます。 empty 空です:

  • "" (空の文字列)

  • 0 (整数としての 0)

  • #0.0 (浮動小数点数としての 0)

  • "0" (文字列としての 0)

  • NULL

  • FALSE

  • array() (空の配列)

  • $var; (1 つは宣言されていますが、変数は値なし)

0,'0','', ## について学ぶ#nullfalseこれら 5 つのタイプの違い。

  • null

    は存在しないことを意味します。値は PHP の下部にある zval スペースに格納されず、型マーク IS_NULL のみが格納されます。

  • そして
  • 0、'0'、''、false

    これら 4 つが存在します。php の最下層は、値と型を使用して zval 空間ストレージを開きます。 。

  • 文字列 '0' は文字列 '' と等しくありません
  • int 0 は文字列 '' null と等しくなります (同一でない比較) 、PHP は型変換を行います)
  • string '0' は null と等しくありません、int 0 は null と等しくなります

方法 2: isset()

isset 関数を使用します。変数が初期化されているかどうかを確認し、変数が設定されているかどうかをテストするために使用できるかどうかを確認します。変数がすでに存在する場合は true を返し、それ以外の場合は false を返します。

以下のコード例を見てみましょう:

<?php
$a = &#39;test&#39;;
$b = array(&#39;key1&#39; => &#39;value1&#39;);
$class = new stdClass();

var_dump(isset($class->test->test)); // 判断对象属性是否定义:输出 bool(false)
var_dump(isset($a)); // 判断变量是否定义:输出 bool(true)
var_dump(isset($c)); // 判断变量是否定义:输出 bool(false)
var_dump(isset($b[&#39;key1&#39;])); // 判断数组元素是否定义:输出 bool(true)
var_dump(isset($b[&#39;key2&#39;])); // 判断数组元素是否定义:输出 bool(false)
?>

出力結果:

PHPを使ってnull値をチェックする方法(4つの方法)

方法 3: is_null( を使用します。 )

is_null 関数: 変数が「null」かどうかを検出します。

変数に値「null」が割り当てられている場合、検出結果は true となり、0、空の文字列、false、および空の配列はすべて false として検出されます。

コード例を詳しく見てみましょう:

<?php
$a = null;
$b = false;
var_dump(is_null($a));   
var_dump(is_null($b));  
var_dump(is_null($c)); 
?>

出力結果:

PHPを使ってnull値をチェックする方法(4つの方法)

方法 4: == を使用します。または === 演算子

    は、
  • var == null

    を使用して、変数が「null」かどうかを判断できます。変数に値「null」が割り当てられている場合、検出結果は true となりますが、0、空の文字列、false、および空の配列はすべて false として検出されます。変数が初期化されていない場合、プログラムはエラーを報告します。

本質は、== 式が両側の変数に対して自動型変換を行うため、判定結果が true になるということです。

以下のコード例を見てみましょう:
<?php
$a = 0;
$b = array();
var_dump($a == null);   
var_dump($b == null);  
var_dump($c == null); 
?>

PHPを使ってnull値をチェックする方法(4つの方法)

  • #var === を使用できます。 null

    変数が「null」かどうかを検出するには、変数の型も「null」である必要があります。 "null" を判定する場合は、is_null に等しいと同じ効果があります。

    <?php
    $a = 0;
    $b = false;
    $c = 0.0;
    $d = null;
    $e = &#39;&#39;;
    var_dump(0 === $a);   // 输出 bool(true)
    var_dump(0 === $b);  // 输出 bool(false)
    var_dump(0 === $c); // 输出 bool(false)
    var_dump(0 === $d);  // 输出 bool(false)
    var_dump(0 === $e);   // 输出 bool(false)
    var_dump(&#39;&#39; === $e);  // 输出 bool(true)
    var_dump(&#39;&#39; === $a);  // 输出 bool(false)
    var_dump(&#39;&#39; === $b);  // 输出 bool(false)
    var_dump(0.0 === $c);// 输出 bool(true)
    var_dump(0.0 === $a);  // 输出 bool(false)
    ?>

PHPを使ってnull値をチェックする方法(4つの方法) === を使用すると、空の文字列、0、false、null、さらには整数と浮動小数点をうまく区別できることがわかります。種類を区別することができます。

わかりました。これですべてです。他に知りたいことがある場合は、これをクリックしてください。 → →

phpビデオチュートリアル

以上がPHPを使ってnull値をチェックする方法(4つの方法)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。