ホームページ  >  記事  >  バックエンド開発  >  PHPで変数が空かどうかを判定する方法の例のまとめ

PHPで変数が空かどうかを判定する方法の例のまとめ

伊谢尔伦
伊谢尔伦オリジナル
2017-06-29 13:44:381383ブラウズ

変数が空かどうかを判断することは多くの場面で使用されますが、同時に、多くの初心者と同様に、私もよく間違いを犯すので、変数が空かどうかを判断するために PHP で一般的に使用されるメソッドをいくつか整理しました

。 1. isset 関数: 変数が初期化されているかどうかを判断します

注: 変数が空かどうかは判断しませんが、配列内の要素が定義されているかどうかを判断するために使用できます

注: isset を使用して配列要素が初期化されているかどうかを判断します 古いものですが、その効率は array_key_exists

$a = '';
$a['c'] = '';
if (!isset($a)) echo '$a 未被初始化' . "";
if (!isset($b)) echo '$b 未被初始化' . "";
if (isset($a['c'])) echo '$a 已经被初始化' . "";
// 显示结果为
// $b 未被初始化
// $a 已经被初始化
2 よりも約 4 倍高くなります。 空の関数: 変数が「空」かどうかを検出します

説明: 初期化されていない変数、値は 0 です。または false または空の 文字列

"" または

属性のない null 変数、空の配列、および オブジェクト はすべて empty==true と判断されます 注 1: 初期化されていない変数は、次の方法で「空」として検出することもできます。 empty 注 2 :empty は変数のみを検出できますが、ステートメントは検出できません

$a = 0;
$b = '';
$c = array();
if (empty($a)) echo '$a 为空' . "";
if (empty($b)) echo '$b 为空' . "";
if (empty($c)) echo '$c 为空' . "";
if (empty($d)) echo '$d 为空' . "";

3. var == null 関数: 変数が「空」かどうかを判断します

説明: 値が 0、false、または空の変数string "" または null 、空の配列は null と判断されます注: 空との大きな違いは、変数が初期化されていない場合、 var == null はエラーを報告することです。

$a = 0;
$b = array();
if ($a == null) echo '$a 为空' . "";
if ($b == null) echo '$b 为空' . "";
if ($c == null) echo '$b 为空' . "";
// 显示结果为
// $a 为空
// $b 为空
// Undefined variable: c

4. is_null 関数: 変数が "null" かどうかを検出します

説明: 変数に "null" の値が割り当てられている場合、検出結果は true になります注 1: null は大文字と小文字を区別しません。 $a = null; $a = NULL は違いはありません注 2: 検出結果は変数の値が null の場合のみ true、0、空の文字列、false、空の配列はすべて false として検出されます

注3: 変数が初期化されていない場合、プログラムはエラーを報告します

$a = null;
$b = false;
if (is_null($a)) echo '$a 为NULL' . "";
if (is_null($b)) echo '$b 为NULL' . "";
if (is_null($c)) echo '$c 为NULL' . "";
// 显示结果为
// $a 为NULL
// Undefined variable: c


5. var === null 関数: 変数が「null」であるかどうかを確認し、変数の型も「null」でなければなりません

説明: 変数に「null」の値が代入されており、変数の型も「null」の場合、検出結果は真となります注1: 「null」と判定された場合は、 is_null と同じ効果です 注 2: 変数が初期化されていない場合、プログラムはエラーを報告します


要約すると、PHP では、「NULL」と「空」は 2 つの概念です。

issetは主に変数が初期化されているかどうかを判断するために使用されます空の値を持つ変数は、「false」、「empty」、「0」、「NULL」、「初期化されていない」と判断できます。 TRUEis_null 値が「NULL」の変数のみをTRUEと判定します

var == nullの値が「false」、「empty」、「0」、「NULL」の変数をTRUEと判定します。

var === null. 値が「NULL」である変数のみがTRUEと判断されます

そのため、変数が本当に「NULL」であるかどうかを判断する場合は、主にis_nullを使用します。 「false」、「0」、その他の値による干渉を避けるため。

以上がPHPで変数が空かどうかを判定する方法の例のまとめの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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