English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
unset() Die Funktion dient zur Zerstörung der angegebenen Variablen.
PHP Versionsanforderungen: PHP 4, PHP 5, PHP 7
void unset ( mixed $var [, mixed $... ] )
Parameterbeschreibung:
Kein Rückgabewert.
<?php // Zerstörung einer einzelnen Variable unset ($foo); // Zerstörung eines einzelnen Array-Elements unset ($bar['quux']); // Zerstörung mehrerer Variablen unset($foo1, $foo2, $foo3); ?>
Wenn eine globale Variable in einer Funktion mit unset() gelöscht wird, wird nur die lokale Variable zerstört, während der Variable im Aufrufumfeld der Wert vor dem Aufruf von unset() beibehalten wird.
<?php function destroy_foo() { global $foo; unset($foo); } $foo = 'bar'; destroy_foo(); echo $foo; ?>
Ausgaberesultat:
bar
Wenn Sie eine globale Variable in einer Funktion mit unset() löschen möchten, können Sie das Array $GLOBALS verwenden:
<?php function foo() { unset($GLOBALS['bar']); } $bar = "something"; foo(); ?>
Wenn eine durch Referenz übergebene Variable in einer Funktion mit unset() gelöscht wird, wird nur die lokale Variable zerstört, während der Variable im Aufrufumfeld der Wert vor dem Aufruf von unset() beibehalten wird.
<?php function foo(&$bar) { unset($bar); $bar = "blah"; } $bar = 'something'; echo "$bar\n"; foo($bar); echo "$bar\n"; ?>
Der folgende Beispielcode gibt aus:
something something
Wenn eine statische Variable in einer Funktion mit unset() gelöscht wird, wird diese Variable im Inneren der Funktion zerstört. Allerdings wird sie beim erneuten Aufruf der Funktion in ihren Wert vor der Zerstörung zurückgesetzt.
<?php function foo() { static $bar; $bar++; echo "Vor unset: $bar, "; unset($bar); $bar = 23; echo "nach unset: $bar\n"; } foo(); foo(); foo(); ?>
Der folgende Beispielcode gibt aus:
Vor unset: 1, nach unset: 23 Vor unset: 2, nach unset: 23 Vor unset: 3, nach unset: 23