Detaillierte Erklärung des Unterschieds zwischen PHP isset() und empty()

巴扎黑
Freigeben: 2016-11-21 15:03:47
Original
1183 Leute haben es durchsucht

PHPs isset()-Funktion wird im Allgemeinen verwendet, um zu erkennen, ob eine Variable gesetzt ist

Format: bool isset ( Mixed var [, Mixed var [, ...]] )
Funktion: Erkennen, ob eine Variable ist gesetzt
Rückgabewert:
Wenn die Variable nicht existiert, geben Sie FALSE zurück
Wenn die Variable existiert und ihr Wert NULL ist, wird auch FALSE zurückgegeben
Wenn die Variable existiert und ihr Wert nicht NULL ist, wird TRUE zurückgegeben
Gleichzeitig wird bei der Überprüfung mehrerer Variablen TRUE nur zurückgegeben, wenn jedes einzelne Element die vorherige Anforderung erfüllt, andernfalls ist das Ergebnis FALSE
Versionen: PHP 3, PHP 4 , PHP 5
Weitere Anweisungen:
Verwenden Sie unset() Nachdem die Variable freigegeben wurde, ist sie nicht mehr isset().
Die PHP-Funktion isset() kann nur für Variablen verwendet werden. Die Übergabe anderer Parameter führt zu einem Parsing-Fehler.
Um zu erkennen, ob eine Konstante festgelegt wurde, verwenden Sie die Funktion define().

Die Funktion empty() von PHP ermittelt, ob der Wert leer ist

Format: bool leer (gemischte Variable)
Funktion: Prüfen, ob eine Variable leer ist
Rückgabewert:
Gib TRUE zurück, wenn die Variable nicht existiert
Gib zurück, wenn die Variable existiert und ihr Wert „“, 0, „0“, NULL, FALSE, array(), var $var und ein Objekt ohne Attribute TURE Wenn die Variable existiert und der Wert nicht „“, 0, „0“, NULL, FALSE, array(), var $var und ein Objekt ohne Attribute ist, dann FALSE
Version: PHP 3, PHP 4, PHP 5
Weitere Erklärung:
Der Rückgabewert von empty() =! (boolean) var, es wird jedoch keine Warnmeldung generiert, da die Variable undefiniert ist. Weitere Informationen finden Sie unter Konvertieren in einen booleschen Wert.
empty() kann nur für Variablen verwendet werden. Die Übergabe anderer Parameter führt zu einem Paser-Fehler und beendet den Vorgang.
Um zu erkennen, ob eine Konstante festgelegt wurde, verwenden Sie die Funktion define().
Beispiel: Ein einfacher Vergleich zwischen empty() und isset()

PHP-Code

<?php   
$var = 0;   
// 结果为 true,因为 $var 为空   
if (emptyempty($var)) {   
echo &#39;$var is either 0 or not set at all&#39;;   
}   
// 结果为 false,因为 $var 已设置   
if (!isset($var)) {   
echo &#39;$var is not set at all&#39;;   
}   
?>
Nach dem Login kopieren
Um über ihre Verbindung zu sprechen, ihr gemeinsamer Punkt ist leer () und isset() sind beide Variablenverarbeitungsfunktionen. Ihre Funktion besteht darin, festzustellen, ob die Variable konfiguriert wurde. Gerade aufgrund ihrer großen Ähnlichkeit im Prozess der Variablenverarbeitung haben sie ein unzureichendes Verständnis ihrer Beziehung. Wenn Sie nur die beiden Funktionen empty() und isset() selbst betrachten, werden die Leute verwirrter. Betrachten Sie es aus einem anderen Blickwinkel. Die Verarbeitungsobjekte von empty() und isset() sind nichts anderes als undefinierte Variablen, 0 und leere Strings.

Wenn die Variable 0 ist, gibt empty() TRUE zurück, isset() gibt TRUE zurück.
Wenn die Variable eine leere Zeichenfolge ist, gibt empty() TRUE zurück, isset() gibt TRUE zurück >Wenn die Variable nicht definiert ist, gibt empty() TRUE und isset() FLASE zurück

Die Erklärung von empty() im Handbuch lautet wie folgt:
Beschreibung bool empty( Mixed var )
Wenn var ein nicht leerer Wert oder ein Wert ungleich Null ist, gibt empty() FALSE zurück. Mit anderen Worten: „“, 0, „0“, NULL, FALSE, array(), var $var; und Objekte ohne Eigenschaften werden als leer betrachtet und TRUE wird zurückgegeben, wenn var leer ist.
Die Erklärung von isset() im Handbuch lautet wie folgt:
isset() erkennt, ob die Variable gesetzt ist
Beschreibung bool isset (mixed var [, Mixed var [, ...]] )
Wenn var existiert, wird TRUE zurückgegeben, andernfalls wird FALSE zurückgegeben.

Wenn eine Variable mit unset() freigegeben wurde, ist sie nicht mehr isset(). Wenn Sie isset() verwenden, um eine Variable zu testen, die auf NULL gesetzt ist, wird FALSE zurückgegeben. Beachten Sie außerdem, dass ein NULL-Byte („?“) nicht der NULL-Konstante von PHP entspricht.
Warnung: isset() kann nur mit Variablen verwendet werden, da die Übergabe anderer Parameter zu einem Analysefehler führt. Wenn Sie überprüfen möchten, ob eine Konstante gesetzt wurde, können Sie die Funktion define() verwenden.

Wenn Sie feststellen möchten, ob eine Variable deklariert wurde, können Sie die isset-Funktion verwenden.
Wenn Sie feststellen möchten, ob einer Variablen Daten zugewiesen wurden und sie nicht leer ist, können Sie die Leerfunktion verwenden Funktion.
Wenn Sie feststellen möchten, ob eine Variable existiert und nicht leer ist, verwenden Sie zuerst die Funktion isset und dann die leere Funktion

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage