ホームページ >バックエンド開発 >PHPチュートリアル >php empty()、isset()、is_null()の違い
PHP の empty()、isset()、is_null() 関数の使用法については多くの議論があり、多くの情報があまり明確ではない可能性があります。ここでも繰り返しますが、概念から語るよりも、直接プログラム例を使って覚えた方がより深いはずです。
テストの種類は次のとおりです:
<?php $a; $b = false; $c = ''; $d = 0; $e = null; $f = array(); ?>
empty()
最初はemptyのvar_dump出力です:
<?php var_dump(empty($a)); var_dump(empty($b)); var_dump(empty($c)); var_dump(empty($d)); var_dump(empty($e)); var_dump(empty($f)); ?>
プログラムの出力は次のとおりです:
bool(true) bool(true) bool(true) bool(true) bool(true) bool(true)
コードからわかるように、データ型が empty または false であるため、 empty() は true を出力します。
isset()
isset の出力をもう一度見てください:
var_dump(isset($a)); var_dump(isset($b)); var_dump(isset($c)); var_dump(isset($d)); var_dump(isset($e)); var_dump(isset($f)); // 输出 bool(false) bool(true) bool(true) bool(true) bool(false) bool(true)
isset() は、それが NULL であるか未定義であるかを判断するためにのみ使用できることがわかります。
is_null()
最後に is_null の出力です:
var_dump(is_null($a)); var_dump(is_null($b)); var_dump(is_null($c)); var_dump(is_null($d)); var_dump(is_null($e)); var_dump(is_null($f)); // 输出 bool(true) bool(false) bool(false) bool(false) bool(true) bool(false)
is_null は文字通りそれを意味します。
empty() はすべてのデータ型が空か false かを判断するために使用できるのに対し、is_null は基本的に isset と同じであり、NULL か未定義かどうかを判断するためにのみ使用できることがわかります