So verwenden Sie foreach, um ein Array in PHP zu ändern
Oct 06, 2020 pm 01:55 PMSo ändern Sie das Array mit PHP foreach: Erstellen Sie zunächst eine PHP-Beispieldatei und ändern Sie dann den Wert im angegebenen Array mit der foreach-Anweisung „foreach($array as $k => $v){$v = 1; }" .
Empfohlen: „PHP-Video-Tutorial“
Das Problem der Verwendung von foreach zum Ändern des Werts eines Arrays in PHP
Schauen Sie sich die Seite „foreach“ des PHP-Dokuments an und schreiben Sie Folgendes:
“Die Die foreach-Syntaxstruktur bietet eine einfache Möglichkeit zum Durchlaufen von Arrays. foreach kann nur auf Arrays und Objekte angewendet werden. Wenn Sie versuchen, es auf Variablen anderer Datentypen oder nicht initialisierte Variablen anzuwenden, gibt es zwei Syntaxen:
foreach (array_expression as $value) statement foreach (array_expression as $key => $value) statement
Das erste Format iteriert über das gegeben. array_expression array. Bei jedem Durchlauf der Schleife wird der Wert der aktuellen Zelle $value zugewiesen und der Zeiger innerhalb des Arrays wird nach vorne verschoben (so dass die nächste Zelle in der nächsten Schleife erhalten wird)
Das zweite Format funktioniert das Gleiche, außer dass der Schlüsselname der aktuellen Einheit auch der Variablen $key in jeder Schleife zugewiesen wird und der Zeiger innerhalb des Arrays bewegt sich einen Schritt vorwärts (das nächste Element wird also in der nächsten Schleife abgerufen) „Was bedeutet das?“ Dies bedeutet, dass die Verwendung von foreach zum Durchlaufen eines Arrays eine Kopie des angegebenen Arrays und nicht das Array selbst bearbeitet. Genauso wie wenn man einen Klon von sich selbst hat, egal wie andere den Klon von dir schlagen oder treten, es wird keine Auswirkungen auf dich haben.
Zum Beispiel:
foreach($array as $k => $v){ $v = 1; }
Eine solche Änderungsmethode ändert $array nicht selbst, sondern ändert ein Array, das es kopiert. Obwohl es dasselbe ist, hat es keine Auswirkung auf $array.
Also was tun? Um dies zu tun:
foreach($array as $k => $v){ $array[$k] = 1; }
Obwohl $k wie $v kopiert wird, ist der Wert von $k, der kopiert wird, immer noch derselbe wie der Wert von $k im ursprünglichen Array, sodass dies erfolgreich sein wird.
Es gibt auch eine fortgeschrittenere Methode: Sie können die Elemente des Arrays einfach ändern, indem Sie & vor $v hinzufügen. Diese Methode weist einen Wert per Referenz zu, anstatt ihn zu kopieren. Zum Beispiel:
foreach($array as &$v){ $v = 1; } unset($v); // 最后取消掉引用
Das wird erfolgreich sein.
Das obige ist der detaillierte Inhalt vonSo verwenden Sie foreach, um ein Array in PHP zu ändern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heißer Artikel

Hot-Tools-Tags

Heißer Artikel

Heiße Artikel -Tags

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

So bestimmen Sie die Anzahl der foreach-Schleifen in PHP

Was ist der Unterschied zwischen der Verwendung von foreach und iterator zum Löschen von Elementen beim Durchlaufen von Java ArrayList?

PHP gibt ein Array mit umgedrehten Schlüsseln zurück

PHP gibt das aktuelle Element in einem Array zurück

Wie kann ich mit der Funktion forEach die Eigenschaften eines Objekts durchlaufen?

Was ist der Unterschied zwischen foreach und for-Schleife?

So erhalten Sie den Indexwert des aktuellen Elements in der PHP-Foreach-Schleife
