Heim >Backend-Entwicklung >PHP-Problem >So ändern Sie den Wert eines mehrdimensionalen Arrays in PHP
In der PHP-Entwicklung ist die Verarbeitung mehrdimensionaler Arrays ein sehr häufiger Vorgang. Manchmal müssen wir ein mehrdimensionales Array ändern, zum Beispiel müssen wir den Wert eines bestimmten Unterarrays in einen anderen Wert ändern oder ein Schlüssel-Wert-Paar löschen usw. Wie kann man also in PHP den Wert eines mehrdimensionalen Arrays ändern?
Als nächstes wird in diesem Artikel detailliert beschrieben, wie Sie mit der foreach-Anweisung den Wert eines mehrdimensionalen Arrays ändern.
In PHP kann die foreach-Anweisung zum Durchlaufen eines Arrays verwendet werden. Die grundlegende Syntax der foreach-Anweisung lautet wie folgt:
foreach ($array as $key => $value) { // 对$value进行操作 }
Darunter ist $array das zu durchlaufende Array, $key der Schlüssel des aktuell durchlaufenen Elements im Array und $value der Wert des aktuell durchlaufenen Elements Element im Array. Über diese drei Parameter können wir auf die Elemente im Array zugreifen und diese bedienen.
Zum Beispiel verwendet der folgende Code die foreach-Anweisung, um ein einfaches Array zu durchlaufen:
$fruits = array("apple", "orange", "banana"); foreach ($fruits as $fruit) { echo $fruit . "<br>"; }
Die Ausgabe des obigen Codes lautet:
apple orange banana
In PHP ändern Für den Wert eines mehrdimensionalen Arrays müssen verschachtelte foreach-Anweisungen verwendet werden. Das Folgende ist ein Beispiel für ein zweidimensionales Array:
$students = array( array("name" => "张三", "age" => 18, "score" => 80), array("name" => "李四", "age" => 19, "score" => 90), array("name" => "王五", "age" => 20, "score" => 85) );
Wenn wir John Does Punktzahl von 90 auf 95 ändern müssen, können wir den folgenden Code verwenden:
foreach ($students as &$student) { if ($student["name"] == "李四") { $student["score"] = 95; } }
Durch den obigen Code verwenden wir eine foreach-Anweisung zum Durchlaufen das $students-Array, jedes Unterarray $student abrufen. Bestimmen Sie in jedem Subarray, ob $name gleich „李思“ ist, und ändern Sie in diesem Fall $score auf 95. Es ist zu beachten, dass Sie beim Ändern des Subarrays eine Referenz & verwenden müssen, da die foreach-Anweisung eine Kopie des Subarrays erstellt.
Als nächstes schauen wir uns ein komplexeres mehrdimensionales Array-Beispiel an:
$employees = array( array("name" => "张三", "age" => 25, "department" => "技术部"), array("name" => "李四", "age" => 26, "department" => "市场部"), array("name" => "王五", "age" => 28, "department" => "财务部") ); $departments = array( "技术部" => array("leader" => "赵六", "location" => "办公室1"), "市场部" => array("leader" => "钱七", "location" => "办公室2"), "财务部" => array("leader" => "孙八", "location" => "办公室3") );
Wenn wir die Abteilung von Zhang San von „Technische Abteilung“ in „Finanzabteilung“ ändern müssen, können wir den folgenden Code verwenden:
foreach ($employees as &$employee) { if ($employee["name"] == "张三") { $department = $departments[$employee["department"]]; $employee["department"] = "财务部"; $employee["leader"] = $department["leader"]; $employee["location"] = $department["location"]; } }
In der oben Im Code verwenden wir zunächst eine foreach-Anweisung, um das Array $employees zu durchlaufen und den Mitarbeiter zu finden, dessen $name gleich „Zhang San“ ist. Dann verwenden wir $employee["department"] als Schlüssel, um Zhang Sans Abteilung aus dem $departments-Array abzurufen, und ändern dann das Schlüssel-Wert-Paar von $employee, einschließlich der Änderung des Werts des Schlüssels „department“ in „Finance“. Abteilung“ und weisen Sie die Werte der Schlüssel „Leiter“ und „Standort“ den Werten der ursprünglichen Abteilung zu.
Durch die Verwendung der foreach-Anweisung können wir mehrdimensionale Arrays problemlos durchlaufen und ändern. Es ist zu beachten, dass beim Ändern von Subarrays Referenzen & verwendet werden müssen.
Das obige ist der detaillierte Inhalt vonSo ändern Sie den Wert eines mehrdimensionalen Arrays in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!