Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich zwei 2D-Arrays in PHP basierend auf einem gemeinsamen Spaltenwert zusammenführen?
Im Bereich der Datenmanipulation erweist sich das Zusammenführen von Arrays häufig als häufige Aufgabe. In diesem Artikel wird ein bestimmtes Szenario untersucht: die Kombination zweier 2D-Arrays basierend auf einem gemeinsamen Spaltenwert.
Stellen Sie sich zwei Arrays vor, die jeweils Objekte mit gemeinsamen Bezeichnern enthalten. Diese Arrays könnten etwa so aussehen:
$array1 = [ ['rank' => '579', 'id' => '1'], ['rank' => '251', 'id' => '2'], ]; $array2 = [ ['size' => 'S', 'status' => 'A', 'id' => '1'], ['size' => 'L', 'status' => 'A', 'id' => '2'], ];
Unser Ziel ist es, diese Arrays zu einem einzigen Array zusammenzuführen und dabei die Elemente zu kombinieren, die denselben „id“-Wert haben.
PHP bietet mehrere Funktionen, die das Zusammenführen von Arrays erleichtern. Lasst uns sie erkunden:
1. array_merge_recursive(): Diese Funktion kombiniert Arrays rekursiv und überschreibt vorhandene Schlüssel im Zielarray mit Werten aus dem Quellarray. Es erreicht mühelos die gewünschte Zusammenführung, wie im folgenden Code zu sehen ist:
$mergedArray = array_merge_recursive($array1, $array2);
2. Benutzerdefinierte Zusammenführungsfunktion: Für maximale Kontrolle können wir eine benutzerdefinierte Zusammenführungsfunktion erstellen:
function my_array_merge(&$array1, &$array2) { $result = []; foreach ($array1 as $key => &$value) { $result[$key] = array_merge($value, $array2[$key]); } return $result; }
Diese Funktion iteriert über die Arrays und führt die entsprechenden Elemente basierend auf ihren Schlüsseln zusammen.
Das Kombinieren von 2D-Arrays durch gemeinsame Spaltenwerte ist ein häufiger Vorgang. PHP bietet native Funktionen wie array_merge_recursive() für schnelles Zusammenführen. Für eine individuelle Zusammenführung oder Leistungsoptimierung können jedoch benutzerdefinierte Funktionen eingesetzt werden. Die Wahl des Ansatzes hängt von den spezifischen Anforderungen und der gewünschten Kontrolle ab.
Das obige ist der detaillierte Inhalt vonWie kann ich zwei 2D-Arrays in PHP basierend auf einem gemeinsamen Spaltenwert zusammenführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!