Heim > Backend-Entwicklung > PHP-Tutorial > Ausführliche Erläuterung, wie Sie mit der Funktion unset() einzelne oder mehrere Variableninstanzen zerstören

Ausführliche Erläuterung, wie Sie mit der Funktion unset() einzelne oder mehrere Variableninstanzen zerstören

伊谢尔伦
Freigeben: 2023-03-11 09:34:01
Original
8029 Leute haben es durchsucht

Die

unset-Funktion ist eine Funktion, die mit PHP geliefert wird, um Variablen zu zerstören. Wir haben die Methode der Verwendung von unset zum Zerstören von statischen-Variablen und globalen Variablen eingeführt Schauen wir uns die folgenden Beispiele an, um Array-Variablen zu zerstören.

Beispiel 1. unset()-Beispiel

<?php
// 销毁单个变量
unset ($foo);
// 销毁单个数组元素
unset ($bar[&#39;quux&#39;]);
// 销毁一个以上的变量
unset ($foo1, $foo2, $foo3);
?>
Nach dem Login kopieren

Das Verhalten von unset() in einer Funktion variiert je nach Art der Variablen, die Sie zerstören möchten.

Wenn Sie eine globale Variable in einer Funktion unset() entfernen, wird nur die lokale Variable zerstört und die Variablen in der aufrufenden Umgebung behalten den gleichen Wert, bevor wir unset() aufrufen.

<?php
function destroy_foo() {
global $foo;
unset($foo);
}
$foo = ‘bar’;
destroy_foo();
echo $foo;
?>
Nach dem Login kopieren

Das obige Beispiel gibt Folgendes aus:

bar

Wenn in einer Funktion unset() eine Variable von einer -Referenz übergeben wird, wird dies der Fall sein Nur lokale Variablen werden zerstört, während Variablen in der aufrufenden Umgebung denselben Wert behalten, bevor wir unset() aufrufen.

<?php
function foo(&$bar) {
unset($bar);
$bar = “blah”;
}
$bar = ‘something’;
echo “$barn”;
foo($bar);
echo “$barn”;
?>
Nach dem Login kopieren

Das obige Beispiel gibt Folgendes aus:

etwas
etwas

statische Variable unset()
Genau genommen verwenden Sie unset(), um statische Variablen zu zerstören Variables unterbricht lediglich die Referenz zwischen Variablenname und Variablenwert.

Beispiel:

<?php
function foo() {
    static $b;
        $a++;
    $b++;
    echo "$a---$bn";
    unset($a,$b);
    var_dump($a);
    var_dump($b);
    echo "######################n";
}
foo();
foo();
foo();
?>
Nach dem Login kopieren

Führen Sie dieses Beispiel aus, Ausgabe:

1---1
NULL
NULL
#######################
1---2
NULL
NULL
#######################
1---3
NULL
NULL
#######################
Nach dem Login kopieren

unset() globale Variable
ist dasselbe wie die statische Variable unset(), Wenn Sie in einer Funktion eine globale Variable unset() entfernen, wird nur die lokale Variable zerstört, und die Variablen in der aufrufenden Umgebung behalten denselben Wert bei, bevor wir unset() aufrufen.

Versuchen Sie, die folgenden beiden Beispiele zu vergleichen:

<?php
function destroy_foo() {
    global $foo;
    unset($foo);
}
$foo = &#39;bar&#39;;
destroy_foo();
echo $foo;
?>
Nach dem Login kopieren
<?php
function destroy_foo() {
    global $foo;
    unset($GLOBALS[&#39;foo&#39;]);
}
$foo = &#39;bar&#39;;
destroy_foo();
echo $foo;
?>
Nach dem Login kopieren

Beim Ausführen des ersten Beispiels wird Folgendes ausgegeben: bar, während beim zweiten Beispiel nichts ausgegeben wird.

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung, wie Sie mit der Funktion unset() einzelne oder mehrere Variableninstanzen zerstören. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
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