Warum werden $GLOBAL[''] und das Schlüsselwort global von statischen Variablen in PHP beeinflusst?

WBOY
Freigeben: 2023-03-01 14:54:02
Original
941 Leute haben es durchsucht

Antwortinhalt:

Ich bin zum ersten Mal auf dieses Problem gestoßen. Ich bin ein wenig neugierig, wie hat der Fragesteller dieses Problem entdeckt?

Lassen Sie mich mein Verständnis erklären.

Zuerst müssen wir den Begriff „Auftrag“ klären.

Wenn $a = 1;, bedeutet dies nicht, dass Daten hinzugefügt werden, deren Name $a ist und deren Wert 1 ist.
Wenn $b = &$a;, bedeutet das nicht, dass $b auf $a zeigt oder umgekehrt.

Der Prozess ist so:
<code class="language-php"><span class="x">$a = 1;</span>
</code>
Nach dem Login kopieren
Lesen Sie das PHP-Handbuch, es gibt viele Beispiele
PHP: Variablenbereich
PHP: Erläuterung der Referenz
PHP: Referenzübergabe
PHP: Was macht eine Referenz?



Variable Scope

Der Gültigkeitsbereich einer Variablen ist der Kontext, in dem sie definiert ist (d. h. ihr effektiver Gültigkeitsbereich). die meisten PHP-Variablen haben nur einen einzigen Gültigkeitsbereich. Diese einzelne Bereichsspanne enthält auch Durch include und require eingeführte Dateien. Zum Beispiel:


<code class="language-php"><span class="cp"><?php</span>
<span class="nv">$a</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span>
<span class="k">include</span> <span class="s1">'b.inc'</span><span class="p">;</span><span class="cp">?></span><span class="x"></span>
</code>
Nach dem Login kopieren
<code class="language-text">global $a;
时会 新建 一个指向与外部$a同地址的指针

$GLOBALS['a'] = &$static_a;
时会 把外部$a 指针 指向 $static_a的内容,抛弃原先的指向
</code>
Nach dem Login kopieren
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