English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP Grundanleitung

PHP Fortgeschrittene Anleitung

PHP & MySQL

PHP Referenzhandbuch

Verwendung und Beispiel der PHP-funktion isset()

PHP verfügbare Funktionen

isset() Die Funktion wird verwendet, um zu überprüfen, ob eine Variable bereits gesetzt und nicht NULL ist.

Wenn eine Variable nach dem Freigeben mit unset() durch isset() überprüft wird, wird FALSE zurückgegeben.

Wenn isset() verwendet wird, um eine Variable zu testen, die auf NULL gesetzt wurde, wird FALSE zurückgegeben.

Zudem ist zu beachten, dass der Null-Buchstabe ("\0") nicht gleich dem PHP-Null-Konstanten ist.

PHP-Versionserfordernis: PHP 4, PHP 5, PHP 7

Syntax

bool isset ( mixed $var [, mixed $... ] )

Begründung der Parameter:

  • $var: zu überprüfende Variable.

Wenn mehrere Parameter übergeben werden, gibt isset() nur TRUE zurück, wenn alle Parameter gesetzt sind. Der Berechnungsprozess läuft von links nach rechts, und der Prozess wird sofort gestoppt, wenn auf eine nicht gesetzte Variable gestoßen wird.

Rückgabewert

Rückgibt TRUE, wenn die angegebene Variable existiert und nicht NULL ist, sonst FALSE.

Online-Beispiel

<?php
$var = '';
// Das Ergebnis ist TRUE, daher wird der folgende Text gedruckt.
if (isset($var)) {
    echo "Variable ist gesetzt." . PHP_EOL;
}
// In den folgenden Beispielen werden wir var_dump verwenden, um den Rückgabewert von isset() auszugeben.
// der Rückgabewert von isset().
$a = "test";
$b = "anothertest";
var_dump(isset($a));      // TRUE
var_dump(isset($a, $b)); // TRUE
unset ($a);
var_dump(isset($a));     // FALSE
var_dump(isset($a, $b)); // FALSE
$foo = NULL;
var_dump(isset($foo));   // FALSE
?>

Ergebnis der Ausgabe:

Variable ist gesetzt.
bool(true)
bool(true)
bool(false)
bool(false)
bool(false)

Dies gilt auch für Elemente in Arrays:

<?php
$a = array ('test' => 1, 'hello' => NULL, 'pie' => array('a' => 'apple'));
var_dump(isset($a['test']));            // TRUE
var_dump(isset($a['foo']));             // FALSE
var_dump(isset($a['hello']));           // FALSE
// Der Wert des Schlüssels 'hello' ist NULL, daher wird er als nicht gesetzt angesehen
// Wenn Sie NULL-Schlüssel überprüfen möchten, können Sie die folgenden Methoden ausprobieren. 
var_dump(array_key_exists('hello', $a)); // TRUE
// Tieferer Test
var_dump(isset($a['pie']['a']));        // TRUE
var_dump(isset($a['pie']['b']));        // FALSE
var_dump(isset($a['cake']['a']['b']));  // FALSE
?>

Ergebnis der Ausgabe:

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

isset() bei Stringschiebungen verwenden

PHP 5.4 ändert das Verhalten von isset() bei Stringschiebungen.

<?php
$expected_array_got_string = 'somestring';
var_dump(isset($expected_array_got_string['some_key']));
var_dump(isset($expected_array_got_string[0]));
var_dump(isset($expected_array_got_string['0']));
var_dump(isset($expected_array_got_string[0.]);5]);
var_dump(isset($expected_array_got_string['0.']);5']);
var_dump(isset($expected_array_got_string['0 Mostel']));
?>

Der obige Beispiel in PHP 5.3 Ausgabe in:

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

Der obige Beispiel in PHP 5.4 Ausgabe in:

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

PHP verfügbare Funktionen