Ein 2D-Array erstellen
Teil des Abschnitts Logik & Ablauf der PHP-Journey von Coddy. Lektion 27 von 68.
Ein mehrdimensionales Array ist einfach ein Array, das andere Arrays als seine Elemente enthält. Der häufigste Typ ist ein 2D-Array, das du dir als ein Raster mit Zeilen und Spalten vorstellen kannst, ähnlich wie eine Tabellenkalkulation oder ein Spielfeld.
Das Erstellen eines 2D array in PHP ist unkompliziert. Du erstellst ein array, bei dem jedes element selbst ein array ist:
<?php
$gameBoard = [
["", "", ""],
["", "", ""],
["", "", ""]
];
?>Dies erstellt ein 3x3-Raster, wobei jedes innere array eine row darstellt und jedes element innerhalb dieser arrays eine Spalte darstellt. Du kannst auch 2D-arrays mit unterschiedlichen Datentypen erstellen:
<?php
$scores = [
[85, 92, 78],
[90, 88, 95],
[76, 84, 89]
];
?>PHP stellt außerdem eine integrierte Funktion namens array_fill() bereit, mit der du schnell ein mit einem bestimmten Wert gefülltes Array erstellen kannst. Sie akzeptiert drei Argumente: den Startindex, die Anzahl der Elemente und den Wert, mit dem gefüllt werden soll:
<?php
// array_fill(start_index, num_elements, value)
$row = array_fill(0, 3, 0); // [0, 0, 0]
?>Du kannst array_fill() mit sich selbst kombinieren, um effizient ein 2D-Array zu erstellen. Zum Beispiel, um ein 3x3-Raster zu erstellen, in dem jede Zelle mit 0 beginnt:
<?php
$grid = array_fill(0, 3, array_fill(0, 3, 0));
// Ergebnis: ein 3x3-Array, bei dem jedes Element 0 ist
?>Mehrdimensionale Arrays sind unglaublich nützlich, um strukturierte Daten wie Spielfelder, Informationstabellen oder jedes Szenario zu organisieren, in dem du Daten in einem Rasterformat darstellen musst. Sie bieten eine natürliche Möglichkeit, mit Zeilen und Spalten zusammengehöriger Informationen zu arbeiten.
Aufgabe
EinfachDu erhältst drei Eingaben, die die Dimensionen und den Anfangswert für ein 2D-Array darstellen: die Anzahl der Zeilen, die Anzahl der Spalten und einen Wert, mit dem jede Position gefüllt wird. Lies diese Eingaben ein, erstelle ein 2D-Array mit den angegebenen Dimensionen, in dem jedes Element auf den angegebenen Wert gesetzt wird, und gib das Array mit print_r() aus.
Eingabeformat:
- Erste Zeile: Anzahl der Zeilen (Ganzzahl)
- Zweite Zeile: Anzahl der Spalten (Ganzzahl)
- Dritte Zeile: Anfangswert für jedes Element (String)
Erwartete Ausgabe: Das erstellte 2D-Array, angezeigt mit print_r()
Probier es selbst
<?php
// Eingabe lesen
$rows = intval(fgets(STDIN));
$columns = intval(fgets(STDIN));
$value = trim(fgets(STDIN));
// TODO: Schreibe deinen Code darunter, um das 2D-Array zu erstellen
// Ergebnis ausgeben
print_r($array);
?>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Übe selbstständig: Online-PHP-Compiler