Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich assoziative PHP-Arrays zusammenführen und dabei eindeutige Schlüssel beibehalten?
Assoziative Arrays mit eindeutigen Schlüsseln zusammenführen
In PHP verwenden assoziative Arrays Zeichenfolgenschlüssel, um auf Werte zuzugreifen. Beim Zusammenführen zweier solcher Arrays können doppelte Schlüssel zum Verlust der Originalwerte führen. Um dies zu vermeiden, ist es notwendig, beim Kombinieren der Arrays die Originalschlüssel beizubehalten.
Betrachten Sie das folgende Beispiel:
$array1 = [ '11' => '11', '22' => '22', '33' => '33', '44' => '44' ]; $array2 = [ '44' => '44', '55' => '55', '66' => '66', '77' => '77' ];
Das Ziel besteht darin, $array1 und $array2 so zusammenzuführen, dass das Ergebnis behält die Originalschlüssel bei und entfernt Duplikate, was zu Folgendem führt:
$output = [ '11' => '11', '22' => '22', '33' => '33', '44' => '44', '55' => '55', '66' => '66', '77' => '77' ];
Die Verwendung der Funktion array_unique in Kombination mit array_merge führt dazu nicht das gewünschte Ergebnis erzielen, da die Schlüssel neu zugewiesen werden. Ein effizienterer Ansatz ist die Verwendung des Operators, der beim Zusammenführen von Arrays die ursprünglichen Schlüssel beibehält:
$output = $array1 + $array2;
Dieser Vorgang kombiniert effektiv die beiden Arrays und überschreibt doppelte Werte. Um die Schlüssel explizit neu zu erstellen, kann alternativ der folgende Code verwendet werden:
$output = array_combine($output, $output);
Beide Methoden bieten eine Lösung für das Problem der Zusammenführung assoziativer Arrays mit eindeutigen Schlüsseln unter Beibehaltung der Originalwerte.
Das obige ist der detaillierte Inhalt vonWie kann ich assoziative PHP-Arrays zusammenführen und dabei eindeutige Schlüssel beibehalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!