Heim  >  Artikel  >  Backend-Entwicklung  >  Der Unterschied zwischen PHP empty(), isset() und is_null()

Der Unterschied zwischen PHP empty(), isset() und is_null()

伊谢尔伦
伊谢尔伦Original
2016-12-02 10:53:14927Durchsuche

Es gab viele Diskussionen über die Verwendung der PHP-Funktionen empty(), isset() und is_null() und viele Informationen sind möglicherweise nicht ganz klar. Ich wiederhole es hier noch einmal, aber anstatt von Konzepten zu sprechen, sollte es tiefergehend sein, es sich direkt anhand von Programmbeispielen einzuprägen.

Die Arten von Tests sind wie folgt:

<?php
 
$a;
$b = false;
$c = &#39;&#39;;
$d = 0;
$e = null;
$f = array();
 
?>

empty()

Der erste ist die var_dump-Ausgabe von empty:

<?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));
 
?>

Programmausgabe Es ist:

bool(true)
bool(true)
bool(true)
bool(true)
bool(true)
bool(true)

Wie aus dem Code ersichtlich ist, gibt empty() true aus, solange der Datentyp leer oder falsch ist.

isset()

Sehen Sie sich die Ausgabe von isset an:

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)

Es ist ersichtlich, dass isset() nur verwendet werden kann Bestimmen Sie, ob es NULL und undefiniert ist.

is_null()

Schließlich ist die Ausgabe von 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 bedeutet es wörtlich.

Es ist ersichtlich, dass empty() verwendet werden kann, um zu bestimmen, ob alle Datentypen leer oder falsch sind, während is_null im Grunde dasselbe wie isset ist und nur verwendet werden kann, um zu bestimmen, ob es NULL ist und undefiniert


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn