unset

(PHP 4, PHP 5, PHP 7, PHP 8)

unsetLöschen einer angegebenen Variablen

Beschreibung

unset(mixed $var, mixed ...$vars): void

unset() löscht die angegebene Variable.

Das Verhalten von unset() innerhalb einer Funktion kann abhängig davon, was für einen Variablentyp Sie zu löschen versuchen, variieren.

Wenn eine globalisierte Variable innerhalb einer Funktion mit unset() behandelt wird, wird nur die lokale Variable gelöscht. Die Variable innerhalb der aufrufenden Umgebung behält den selben Wert wie vor dem Aufruf von unset().

<?php
function destroy_foo()
{
    global 
$foo;
    unset(
$foo);
}

$foo 'bar';
destroy_foo();
echo 
$foo;
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

bar

Um eine globale Variable innerhalb einer Funktion zu löschen, kann das $GLOBALS-Array verwendet werden:

<?php
function foo()
{
    unset(
$GLOBALS['bar']);
}

$bar "something";
foo();
?>

Wenn eine Variable, die als Referenz übergeben wird ("Passed by Reference"), innerhalb einer Funktion gelöscht wird, wird nur die lokale Variable gelöscht. Die Variable im aufrufenden Environment enthält den selben Wert wie vor dem Aufruf von unset().

<?php
function foo(&$bar)
{
    unset(
$bar);
    
$bar "blah";
}

$bar 'something';
echo 
"$bar\n";

foo($bar);
echo 
"$bar\n";
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

something
something

Wenn eine statische Variable innerhalb einer Funktion gelöscht wird, löscht unset() die Variable nur im Kontext des verbleibenden Funktionsablaufs. Die folgenden Aufrufe stellen den vorhergehenden Wert der Variablen wieder her.

<?php
function foo()
{
    static 
$bar;
    
$bar++;
    echo 
"Vor unset: $bar, ";
    unset(
$bar);
    
$bar 23;
    echo 
"nach unset: $bar\n";
}

foo();
foo();
foo();
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

Vor unset: 1, nach unset: 23
Vor unset: 2, nach unset: 23
Vor unset: 3, nach unset: 23

Parameter-Liste

var

Die zu löschende Variable.

vars

Weitere zu löschende Variablen ...

Rückgabewerte

Es wird kein Wert zurückgegeben.

Beispiele

Beispiel #1 unset()-Beispiel

<?php
// löscht eine einzelne Variable
unset($foo);

// löscht ein einzelnes Element eines Arrays
unset($bar['quux']);

// löscht mehr als eine Variable
unset($foo1$foo2$foo3);
?>

Beispiel #2 Verwendung von (unset) Casting

(unset)-Casting wird häufig mit der unset() Function verwechselt. (unset)-Casting dient nur als ein NULL-Typ-Cast, der Vollständigkeit halber. Es ändert nicht die gecastete Variable. Das (unset)-Casting ist ab PHP 7.2.0 missbilligt, ab 8.0.0 entfernt.

<?php
$name 
'Felipe';

var_dump((unset) $name);
var_dump($name);
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

NULL
string(6) "Felipe"

Anmerkungen

Hinweis: Da dies ein Sprachkonstrukt und keine Funktion ist, können Sie dieses nicht mit Variablenfunktionen oder benannten Parametern verwenden.

Hinweis:

Es ist möglich, sogar Objekteigenschaften zu löschen, die im aktuellen Kontext sichtbar sind.

Hinweis:

Es ist nicht möglich, $this innerhalb einer Objektmethode zu löschen.

Hinweis:

Wenn unset() auf Objekteigenschaften angewendet wird, auf die nicht direkt zugegriffen werden kann, wird, sofern sie deklariert wurde, die Überladungsmethode __unset aufgerufen.

Siehe auch

Hier Kannst Du einen Kommentar verfassen


Bitte gib mindestens 10 Zeichen ein.
Wird geladen... Bitte warte.
* Pflichtangabe
Es sind noch keine Kommentare vorhanden.

PHPUnit in der Version 10 erschienen

Das beliebte Testframeworks PHPUnit ist in der Version 10 erschienen und steht zum Download bereit ...

TheMax

Autor : TheMax
Kategorie: Software & Web-Development

Laravel 10 veröffentlicht

Laravel Version 10 steht mit einer Mindestanforderung von PHP 8.1 zum Download bereit. ...

admin

Autor : admin
Kategorie: Software & Web-Development

DeepL Erweiterung Write als beta veröffentlicht

DeepL hat eine neuen Dienst Namens „write“ veröffentlicht, der die Rechtschreibung und Grammatik mit KI verbessern soll. ...

admin

Autor : admin
Kategorie: Dies und Das

Tutorial veröffentlichen

Tutorial veröffentlichen

Teile Dein Wissen mit anderen Entwicklern weltweit

Du bist Profi in deinem Bereich und möchtest dein Wissen teilen, dann melde dich jetzt an und teile es mit unserer PHP-Community

mehr erfahren

Tutorial veröffentlichen

Restart the Stream for Fubo TV

The issue could be with a particular channel streaming. Turn off the stream you are facing issues with and try another channel. If that channel st ...

Geschrieben von hensen5005 am 28.05.2023 00:19:38
Forum: Fragen/Vorschläge zum Forum
Check internet speed for smooth function of Fubo TV

Quite often, problems with streaming applications are related to slow internet speeds. So try using other apps like Youtube and check whether your ...

Geschrieben von hensen5005 am 28.05.2023 00:11:16
Forum: Fragen/Vorschläge zum Forum
Reinstall or update the application Fubo App

Much like other applications, Fubotv/connect (https://www.fubo-connect.com/) also receives updates over time. So if there is any pending update fo ...

Geschrieben von hensen5005 am 28.05.2023 00:02:36
Forum: Fragen/Vorschläge zum Forum
Peacock offers faster access to Universal films

In July 2021, Universal released The Boss Baby 2 in theaters, and also for paid subscribers to Peacock on the same day. It did the same in October ...

Geschrieben von hensen5005 am 27.05.2023 23:51:25
Forum: Fragen/Vorschläge zum Forum