Heim > Artikel > Backend-Entwicklung > So konvertieren Sie ein zweidimensionales Array in PHP in einen angegebenen Schlüsselwert
Das zweidimensionale Array in PHP ist eine sehr verbreitete Datenstruktur, die zum Speichern großer Datenmengen verwendet werden kann und sehr flexibel ist. Wenn wir ein zweidimensionales Array verarbeiten, müssen wir normalerweise bestimmte Elemente basierend auf bestimmten Bedingungen herausfiltern oder die Struktur dieser Elemente neu organisieren. In diesem Fall kann die Konvertierung eines 2D-Arrays in eine andere Form sehr nützlich sein. In diesem Artikel wird erläutert, wie Sie mit der Array-Funktion in PHP ein zweidimensionales Array in eine bestimmte Schlüsselwertform konvertieren.
1. Was ist ein zweidimensionales Array?
Ein zweidimensionales Array ist eine Datenstruktur, die aus mehreren eindimensionalen Arrays besteht. Man kann es sich wie eine Tabelle vorstellen, wobei jede Zeile ein eindimensionales Array darstellt und die Spalten Elemente im eindimensionalen Array darstellen.
Zum Beispiel erstellt der folgende Code ein zweidimensionales Array:
$data = array( array("name" => "Tom", "age" => 20), array("name" => "Jerry", "age" => 18) );
Dieses Array enthält zwei Elemente, jedes Element ist ein eindimensionales Array mit „name“ und „ „Alter“-Schlüssel und entsprechende Werte. Dieses zweidimensionale Array kann die Namens- und Altersinformationen einer Gruppe von Personen darstellen.
2. Zweidimensionale Array-Konvertierung
In Verarbeitung von zwei Bevor wir ein eindimensionales Array konvertieren, schauen wir uns an, wie ein eindimensionales Array in eine bestimmte Schlüssel-Wert-Paarform konvertiert wird. PHP bietet eine sehr praktische Funktion array_column(), um diese Funktion zu erreichen. Die Funktion array_column() kann eine angegebene Spalte aus einem mehrdimensionalen Array entfernen und den Wert der Spalte zurückgeben. Zum Beispiel:
$data = array( array("name" => "Tom", "age" => 20), array("name" => "Jerry", "age" => 18) ); $names = array_column($data, "name"); print_r($names);
Ausgabe:
Array ( [0] => Tom [1] => Jerry )
Im obigen Code verwenden wir die Funktion array_column(), um die Spalte „name“ im Array $data zu extrahieren und hinzuzufügen Gespeichert in einem neuen Array $names. Auf diese Weise können wir problemlos alle Namensinformationen erhalten.
In der tatsächlichen Entwicklung müssen wir normalerweise das zweidimensionale Array konvertieren nach unterschiedlichen Bedingungen. Organisieren Sie beispielsweise nach Alter, Initialen usw. Zu diesem Zeitpunkt können wir die Array-Funktion in PHP verwenden, um dieses Ziel zu erreichen. Im Folgenden stellen wir einige häufig verwendete Methoden vor.
(1) Verwenden Sie die Funktion array_reduce()
Die Funktion array_reduce() kann kumulative Berechnungen für alle Elemente im Array durchführen und das Ergebnis zurückgeben. Mit dieser Funktion können wir Elemente in einem zweidimensionalen Array entsprechend dem angegebenen Schlüsselwert kombinieren.
Wenn wir beispielsweise das obige $data-Array nach dem „Alter“-Wert klassifizieren möchten, können wir den folgenden Code verwenden:
$result = array_reduce($data, function ($acc, $item) { $age = $item['age']; if (!isset($acc[$age])) { $acc[$age] = array(); } $acc[$age][] = $item; return $acc; }, array()); print_r($result);
Ausgabe: #🎜🎜 #
Array ( [20] => Array ( [0] => Array ( [name] => Tom [age] => 20 ) ) [18] => Array ( [0] => Array ( [name] => Jerry [age] => 18 ) ) )#🎜 🎜#Im obigen Code verwenden wir die anonyme PHP-Funktion und die array_reduce()-Funktion. Der erste Parameter $acc der anonymen Funktion stellt den Akkumulator dar, der zum Speichern der akkumulierten Ergebnisse verwendet wird, und der zweite Parameter $item stellt jedes Element im Array dar. Im Funktionskörper erhalten wir zunächst den „Alter“-Wert des Elements und bestimmen dann, ob das dem „Alter“-Wert entsprechende Array bereits im Akkumulator vorhanden ist. Wenn es nicht vorhanden ist, erstellen wir abschließend ein neues Array das Element in diesem Array.
(2) Verwenden Sie die Funktion array_map()
Die Funktion array_map() kann jedes Element im Array verarbeiten und ein neues Array zurückgeben. Mit dieser Funktion können wir die Elemente im zweidimensionalen Array entsprechend dem angegebenen Schlüsselwert ändern.
Zum Beispiel ändert der folgende Code den Schlüsselwert „name“ jedes Elements im Array $data oben in den Wert „age“ des Elements und speichert ihn in einem neuen Array: # 🎜🎜 #
$result = array_map(function ($item) { $age = $item['age']; $item['name'] = $age; return $item; }, $data); print_r($result);Ausgabe:
Array ( [0] => Array ( [name] => 20 [age] => 20 ) [1] => Array ( [name] => 18 [age] => 18 ) )Im obigen Code haben wir die anonyme PHP-Funktion und die array_map()-Funktion verwendet. Der Parameter $item der anonymen Funktion repräsentiert jedes Element im Array. Im Funktionskörper erhalten wir zunächst den „Alter“-Wert des Elements und weisen diesen Wert dann dem „Name“-Schlüssel des Elements zu. 3. Zusammenfassung Das Obige ist die Methode zum Konvertieren eines zweidimensionalen Arrays in PHP in einen angegebenen Schlüsselwert. Zusammenfassend: #🎜🎜 #Verwenden Sie die Funktion array_column(), um ein eindimensionales Array in die angegebene Schlüssel-Wert-Paarform zu konvertieren. Verwenden Sie die Funktion array_reduce(), um zweidimensionale Arrays gemäß angegebenen Schlüsselwerten zu kombinieren.
Das obige ist der detaillierte Inhalt vonSo konvertieren Sie ein zweidimensionales Array in PHP in einen angegebenen Schlüsselwert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!