PHP-Array-Zusammenführung: Arrays mit passenden Schlüsseln kombinieren
Diese Frage untersucht, wie man zwei PHP-Arrays zusammenführt, die dieselben Schlüssel teilen. Lassen Sie uns auf das Problem und die Lösung eingehen.
Problem:
Betrachten Sie die folgenden zwei Arrays:
Das Ziel ist die Zusammenführung Diese Arrays durch Aggregieren der Werte, die jedem übereinstimmenden Schlüssel entsprechen.
Lösung mit array_map:
Array_merge_recursive kann zwar Arrays rekursiv zusammenführen, erfordert jedoch Arrays mit übereinstimmenden Schlüssel-Wert-Paaren . Eine benutzerdefinierte Lösung mit array_map kann das gewünschte Ergebnis erzielen:
$results = array(); array_map(function($a, $b) use (&$results) { $key = current(array_keys($a)); $a[$key] = array('ip' => $a[$key]); $key = current(array_keys($b)); $b[$key] = array('name' => $b[$key]); $results += array_merge_recursive($a, $b); }, $array1, $array2);
Erklärung:
Die Ausgabe ist ein Array mit Schlüsseln, die Kameranummern und Werte als Unterarrays darstellen „ip“- und „name“-Eigenschaften.
Durch die Nutzung von array_map und benutzerdefinierter Schlüsselmanipulation führt diese Lösung Arrays mit passenden Schlüsseln effizient zusammen und behält dabei gleichzeitig die Schlüssel-Wert-Struktur bei.
Das obige ist der detaillierte Inhalt vonWie füge ich PHP-Arrays mit passenden Schlüsseln zusammen und erstelle Unterarrays?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!