Heim >Backend-Entwicklung >PHP-Tutorial >So lösen Sie das PHP-Array-Referenzproblem, das nach der foreach-Schleife übrig bleibt

So lösen Sie das PHP-Array-Referenzproblem, das nach der foreach-Schleife übrig bleibt

不言
不言Original
2018-07-10 16:36:521792Durchsuche

Dieser Artikel stellt hauptsächlich das Referenzproblem vor, das darin besteht, dass PHP ein Array nach der foreach-Schleife verlässt. Jetzt kann ich es mit Ihnen teilen

zB:


Ergebnis:


Erklärung:

1 Domäne auf Blockebene, Array-Referenz endet, $k, $a gibt keinen Speicher frei

2 Wenn der erste Referenzzyklus endet, zeigt $a auf das letzte Element des Arrays 4

3 . Wenn der erste Referenzzyklus endet, starten Sie die Schleife zweimal (zu diesem Zeitpunkt zeigt $a bereits auf das letzte Element, das eine Referenz ist)

Schleifen 4 Mal. Die Änderungen im Array sind:

1-> [1,2,3,4]

2-> [1,2,3,4]

3-> [1,2,3,3] Der dritte Zeitwert zeigt auf das letzte Element 3. Wert ist jedoch eine globale Referenz, die auf das letzte Element im letzten zeigt Zyklus, also wenn Wert=3, wird auch das letzte Element sein. Der Wert wird in 3 geändert

4->

Hinweise:

1. Das Implementierungsprinzip von foreach basiert auf dem Konzept interner Zeiger

2.&s foreach-Schleife endet und der Zeiger zeigt auf das letzte Element

So vermeiden Sie:

unset ($a)

nach Verwendung der &foreach-Schleife Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein. Weitere verwandte Inhalte finden Sie im PHP-Chinesisch Webseite!

Verwandte Empfehlungen:

Über die Analyse des PHP-Pipeline-Plug-Ins LeaguePipeline

So verwenden Sie PHP zum Hochladen mehrerer Videos gleichzeitig

Das obige ist der detaillierte Inhalt vonSo lösen Sie das PHP-Array-Referenzproblem, das nach der foreach-Schleife übrig bleibt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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