Heim >Backend-Entwicklung >PHP-Tutorial >Wie gruppiere ich ein 2D-PHP-Array effizient nach Spaltenwert?
Effizientes Gruppieren von 2D-Arrays nach Spaltenwert mit PHP
Das Gruppieren mehrdimensionaler Arrays nach einem bestimmten Spaltenwert kann die Organisation und den Abruf von Daten verbessern. Obwohl es für diese Aufgabe keine nativen PHP-Funktionen gibt, kann ein benutzerdefinierter Ansatz mit einer foreach-Schleife dieses Ziel effektiv erreichen.
Problem:
Betrachten Sie die folgende 2D-Array-Darstellung Datenzeilen:
$array = [ [ 'id' => 96, 'shipping_no' => '212755-1', 'part_no' => 'reterty', 'description' => 'tyrfyt', 'packaging_type' => 'PC', ], [ 'id' => 96, 'shipping_no' => '212755-1', 'part_no' => 'dftgtryh', 'description' => 'dfhgfyh', 'packaging_type' => 'PC', ], [ 'id' => 97, 'shipping_no' => '212755-2', 'part_no' => 'ZeoDark', 'description' => 's%c%s%c%s', 'packaging_type' => 'PC', ], ];
Das Ziel besteht darin, die Array-Elemente nach der Spalte „id“ zu gruppieren und Unterarrays der Gruppierung zu bilden Zeilen.
Lösung:
Verwendung einer foreach-Schleife:
$result = []; foreach ($data as $element) { $result[$element['id']][] = $element; }
Erklärung:
Die foreach-Schleife durchläuft jedes Element im $data-Array. Für jedes Element überprüft es die Spalte „id“ und verwendet sie als Schlüssel im $result-Array. Wenn der Schlüssel (ID) bereits vorhanden ist, wird ein neues Element an das entsprechende Unterarray angehängt.
Ausgabe:
Das $result-Array wird basierend auf dem ' id‘-Spalte, was zu Folgendem führt:
$result = [ 96 => [ [ 'id' => 96, 'shipping_no' => '212755-1', 'part_no' => 'reterty', 'description' => 'tyrfyt', 'packaging_type' => 'PC', ], [ 'id' => 96, 'shipping_no' => '212755-1', 'part_no' => 'dftgtryh', 'description' => 'dfhgfyh', 'packaging_type' => 'PC', ], ], 97 => [ [ 'id' => 97, 'shipping_no' => '212755-2', 'part_no' => 'ZeoDark', 'description' => 's%c%s%c%s', 'packaging_type' => 'PC', ], ], ];
Diese Methode bietet eine flexible und effiziente Möglichkeit, 2D-Arrays nach einem angegebenen Spaltenwert zu gruppieren und so effiziente Daten zu ermöglichen Extraktion und Manipulation.
Das obige ist der detaillierte Inhalt vonWie gruppiere ich ein 2D-PHP-Array effizient nach Spaltenwert?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!