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 ) ) )
(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);
Array ( [0] => Array ( [name] => 20 [age] => 20 ) [1] => Array ( [name] => 18 [age] => 18 ) )
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!