Ändern von 2D-Array-Elementen
Teil des Abschnitts Logik & Ablauf der PHP-Journey von Coddy — Lektion 29 von 68.
Sobald Sie auf Elemente in einem 2D-Array zugreifen können, ist der nächste logische Schritt zu lernen, wie man deren Werte ändert. Das Ändern von Elementen in einem 2D-Array verwendet dieselbe Syntax mit doppelter Indizierung wie der Zugriff auf sie, jedoch mit einem Zuweisungsoperator, um einen neuen Wert festzulegen.
So ändern Sie ein bestimmtes Element in einem 2D-Array:
<?php
$gameBoard = [
["", "", ""],
["", "", ""],
["", "", ""]
];
// Ändern Sie die mittlere Zelle in 'X'
$gameBoard[1][1] = "X";
// Ändern Sie die obere linke Ecke in 'O'
$gameBoard[0][0] = "O";
?>Die Syntax $gameBoard[1][1] = "X" zielt auf Zeile 1, Spalte 1 ab (die Mitte eines 3x3-Gitters) und weist dieser Position den Wert "X" zu. Dies modifiziert das ursprüngliche Array direkt und ersetzt den Wert, der zuvor dort vorhanden war.
Diese Modifikationstechnik ist essenziell für das Aktualisieren von Spielzuständen, das Ändern von Daten in Tabellen oder jedes Szenario, in dem Sie bestimmte Positionen innerhalb Ihrer gitterartigen Datenstruktur ändern müssen. Die Fähigkeit, exakte Positionen zu bestimmen und zu aktualisieren, macht 2D-Arrays perfekt für die Darstellung dynamischer, veränderbarer Informationen, die in Zeilen und Spalten organisiert sind.
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Aufgabe
EinfachSie erhalten vier Eingaben: ein 2D-Array, das einen Sitzplan im JSON-Format darstellt, einen Zeilenindex, einen Spaltenindex und einen neuen Passagiernamen. Lesen Sie alle vier Eingaben ein, konvertieren Sie den JSON-String in ein 2D-Array, ändern Sie das Element an der angegebenen Zeile und Spalte, indem Sie den neuen Passagiernamen zuweisen, und geben Sie das aktualisierte 2D-Array mit print_r() aus.
Das 2D-Array stellt einen Sitzplan dar, bei dem jedes Element einen Passagiernamen oder einen leeren String für freie Plätze enthält.
Eingabeformat:
- Erste Zeile: Ein JSON-Array, das den Sitzplan darstellt (Beispiel:
[["Alice","Bob",""],["","Charlie","Diana"],["","",""]]) - Zweite Zeile: Zeilenindex (Ganzzahl)
- Dritte Zeile: Spaltenindex (Ganzzahl)
- Vierte Zeile: Neuer Passagiername (String)
Erwartete Ausgabe: Das modifizierte 2D-Array, angezeigt mit print_r()
Spickzettel
Um Elemente in einem 2D-Array zu ändern, verwenden Sie die Syntax mit doppeltem Index und einem Zuweisungsoperator:
$array[row][column] = newValue;Beispiel für das Ändern eines Spielfelds:
<?php
$gameBoard = [
["", "", ""],
["", "", ""],
["", "", ""]
];
// Ändere die mittlere Zelle zu 'X'
$gameBoard[1][1] = "X";
// Ändere die obere linke Ecke zu 'O'
$gameBoard[0][0] = "O";
?>Dies ändert das ursprüngliche Array direkt und ersetzt den Wert an der angegebenen Position. Die Änderungstechnik ist essenziell für die Aktualisierung dynamischer Daten, die in Zeilen und Spalten organisiert sind.
Probier es selbst
<?php
// Eingaben lesen
$json_input = trim(fgets(STDIN));
$row_index = intval(fgets(STDIN));
$col_index = intval(fgets(STDIN));
$new_passenger = trim(fgets(STDIN));
// JSON in ein 2D-Array umwandeln
$seating_chart = (array)json_decode($json_input, true);
// TODO: Schreiben Sie unten Ihren Code, um den Sitzplan zu ändern
// Das geänderte Array ausgeben
print_r($seating_chart);
?>Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Logik & Ablauf
1Fortgeschrittene Funktionen
Anonyme FunktionenClosures und 'use'Arrow FunctionsCallback-FunktionenVerwendung von 'call_user_func'VariablenfunktionenReferenzübergabeRekursive FunktionenRückblick: Funktions-Medley4Mehrdimensionale Arrays
Ein 2D-Array erstellenZugriff auf 2D-Array-ElementeÄndern von 2D-Array-ElementenIterieren mit verschachtelten Schleifen2D assoziative ArraysZusammenfassung: Einfache Gitter-Übung2Fortgeschrittene Array-Manipulationen
Hinzufügen mit 'array_push'Entfernen mit 'array_pop'Hinzufügen mit 'array_unshift'Entfernen mit 'array_shift'Indizierte Arrays zusammenführenAssoziative Arrays zusammenführenExtrahieren mit 'array_slice'Werte mit 'in_array'Schlüssel mit 'array_search'Rückblick: Playlist-Übung3Arrays sortieren
Indizierte Arrays aufsteigend sortierenIndizierte Arrays absteigend sortierenAssoziative Arrays nach Wert sortierenAssoziative Arrays nach Schlüssel sortierenNatürliche SortierungBenutzerdefiniertes Sortieren mit 'usort'Recap: Leaderboard-Sortierung