Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich zwei 2D-Arrays in PHP basierend auf einem gemeinsamen Spaltenwert zusammenführen?

Wie kann ich zwei 2D-Arrays in PHP basierend auf einem gemeinsamen Spaltenwert zusammenführen?

Linda Hamilton
Linda HamiltonOriginal
2024-12-03 10:14:15479Durchsuche

How Can I Merge Two 2D Arrays in PHP Based on a Shared Column Value?

Zusammenführen zweier 2D-Arrays nach gemeinsamem Spaltenwert

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.

Native Merge von PHP Optionen

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.

Fazit

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn