この記事は、PHP の empty 関数と isset 関数の比較紹介です。一定の参考価値があります。必要な友人は参照してください。お役に立てれば幸いです。
共通の話題ですが、この 2 つの関数を比較に使用する理由は、変数が空かどうかを判断するためによく使用されるためですが、少し異なります。
定義
最初に 2 つの関数のマニュアルを見てみましょう
empty
empty — 変数が空かどうかを確認します
bool empty (mixed $var)
変数が空であるとみなされるかどうかを決定します。変数が存在しない場合、またはその値が FALSE に等しい場合、その変数は存在しないとみなされます。 empty() は、変数が存在しない場合に警告を生成しません。
isset
isset — 変数が設定されているかどうかを確認し、NULL
bool isset (mixed $var , [mixed $.. . ] )
変数が設定されているか、NULL ではないかを確認してください。
マニュアルから、2 つの関数の焦点は、empty のフォーカスが空であるかどうか、および isset のフォーカスが設定されていて NULL ではないかどうかであることがわかります。
比較
以下に、考えられる null 値をいくつか示します。2 つの関数を使用して、変数が空かどうかを判断し、戻り値が期待どおりかどうかを比較します (注: isset が false を返すことは、空と同等です) true を返します)。
変数値 | empty | isset | 同じですか |
---|---|---|---|
false | bool(true) | bool(true) | 同じではありません |
#null | bool(true) | bool(false) | 同じ |
'' | bool (true) | bool(true) | 同じではありません |
'0' | bool(true) | bool (true) | 同じではありません |
bool(true) | bool(true) | 同じではありません | |
bool(true) | bool(true) | 同じではありません | |
bool(true) | bool(false) | 同じ |
上の表からわかるように、empty はすべての値が空であると見なしますが、isset は、null と未定義を除き、設定されており非 NULL であると見なします。 。 2 つの関数の違いを理解した後、コードを記述するときに必要に応じて選択できます。
以上がPHPのempty関数とisset関数の比較入門の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。