Numerisch verschlüsselte assoziative Arrays unter Beibehaltung der Originalschlüssel zusammenführen
Beim Zusammenführen zweier assoziativer Arrays mit numerisch verschlüsselten Indizes treten häufig Probleme auf Dabei bleiben sowohl die Elemente als auch ihre Originalschlüssel erhalten. Betrachten Sie die folgenden Arrays:
array( '11' => '11', '22' => '22', '33' => '33', '44' => '44' ); array( '44' => '44', '55' => '55', '66' => '66', '77' => '77' );
Die Verwendung von array_unique( array_merge( $array1 , $array2 ) ) mag wie eine Lösung erscheinen, aber es ändert die ursprünglichen Schlüssel.
Lösung 1 : Verwenden von array_merge und array_combine
Verwenden array_merge zum Kombinieren der Arrays und array_combine zum Wiederherstellen der Originalschlüssel:
$output = array_merge($array1, $array2); $output = array_combine($output, $output);
Lösung 2: Verwenden des Array Merge Union Operators ( )
Eine praktische Lösung ist: Verwenden Sie den Array-Merge-Union-Operator ( ):
$output = $array1 + $array2;
Ergebnis:
In beiden Fällen behält das resultierende Array die ursprünglichen Schlüssel bei und enthält alle eindeutigen Elemente:
array( '11' => '11', '22' => '22', '33' => '33', '44' => '44', '55' => '55', '66' => '66', '77' => '77' );
Das obige ist der detaillierte Inhalt vonWie füge ich numerisch verschlüsselte Arrays in PHP zusammen und behalte dabei die Originalschlüssel bei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!