判定方法: 1. isset() 関数を使用して配列内の要素が定義されているかどうかを判定し、定義されていない場合は空配列になります; 2. empty() 関数を使用して配列の要素が定義されているかどうかを確認します配列変数は空です。空の場合は、空の配列です。 3. 「配列変数 == null」を使用して、配列変数が「空」かどうかを判断します。空の場合は、空の配列です。
このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター
PHP で決定空配列の 5 メソッドかどうか
#1. isset 関数: 変数が初期化されているかどうかを判定
説明: 変数が空であるかどうかは判断されません。また、配列内の要素が定義されているかどうかを判断するために使用できます。
注: isset を使用して配列要素が初期化されているかどうかを判断する場合、その効率は array_key_exists
<?php $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 は変数のみを検出できますが、ステートメントは検出できません<?php $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 为空' . "";
#説明: 0、false、空の文字列 ""、または null の値変数と空の配列は、null と判断されます。
注: 空との大きな違いは、var == null が次の場合にエラーを報告することです。変数は初期化されていません。<?php $a = 0; $b = array(); if ($a == null) echo '$a 为空' . ""; if ($b == null) echo '$b 为空' . ""; if ($c == null) echo '$b 为空' . ""; // 显示结果为 // $a 为空 // $b 为空 // Undefined variable: c
PHP ビデオ チュートリアル
」]4. is_null 関数: 変数が「null」かどうかを検出します
注: 変数に「null」の値が割り当てられている場合、検出結果は true になります
注 1: null は大文字と小文字を区別しません: $a = null; $a = NULL は何もしません違い注2: 検出結果は変数の値がnullの場合のみtrueとなり、0、空文字列、false、空配列はすべてfalseとして検出されます注3 : 変数が初期化されていない場合、プログラムはエラーを報告します<?php $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
注: 変数に「null」の値が割り当てられ、変数の型も「null」の場合、検出結果は true
注 1: null と判定された場合は、すべて is_null と同じ効果になります。##注 2: 変数が初期化されていない場合、プログラムはエラーを報告します
概要:
PHP では、「NULL」と「空」は概念です。
isset は、主に変数が初期化されているかどうかを判断するために使用されます。
empty は、「false」、「empty」、「0」、「NULL」の値を持つ変数を設定できます。 "uninitialized". TRUE
is_null と判定 値が "NULL" の変数のみ TRUE
var == null 判定 "false"、"empty"、"0"、 "NULL" すべての変数が TRUE
var === null であると判断され、値が "NULL" の変数のみが TRUE
であると判断されます。実際には「NULL」ですが、ほとんどの場合、「false」や「0」などの値との干渉を避けるために is_null を使用します。
プログラミング関連の知識について詳しくは、
プログラミング ビデオをご覧ください。 !
以上がPHPで配列が空かどうかを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。