Heim >Backend-Entwicklung >PHP-Tutorial >Wie füge ich in PHP zwei Arrays mit Schlüssel-Wert-Paaren zu einem einzigen Array zusammen?

Wie füge ich in PHP zwei Arrays mit Schlüssel-Wert-Paaren zu einem einzigen Array zusammen?

Susan Sarandon
Susan SarandonOriginal
2024-12-15 07:17:10671Durchsuche

How to Merge Two Arrays with Key-Value Pairs into a Single Array in PHP?

Zeilendaten aus mehreren Arrays zusammenführen

Das Zusammenführen von Daten aus mehreren Arrays zu einer einzigen zusammenhängenden Struktur kann eine häufige Programmieraufgabe sein. Diese Frage untersucht ein Szenario, in dem zwei Arrays zusammengeführt werden müssen, um ein neues Array mit bestimmten Attributen zu erstellen.

Das erste Array enthält zwei Elemente, die jeweils aus einem Schlüssel-Wert-Paar „gross_value“ und „quantity“ bestehen . Das zweite Array enthält außerdem zwei Elemente, die jeweils aus einem Schlüssel-Wert-Paar „item_title_id“ und „order_id“ bestehen.

Das Ziel besteht darin, diese Arrays in einem neuen Array zusammenzuführen, in dem jedes Element alle Schlüssel-Wert-Paare kombiniert. Wertepaare aus beiden ursprünglichen Arrays. Das resultierende Array sollte vier Schlüssel-Wert-Paare haben: „gross_value“, „quantity“, „item_title_id“ und „order_id“.

Lösung

Der empfohlene Ansatz, um diese Zusammenführung zu erreichen, ist durch die Verwendung der Funktion array_merge_recursive. Diese Funktion verwendet mehrere Arrays als Eingabe und führt ihre Werte rekursiv zusammen.

Um die Zusammenführung vorzubereiten, werden die numerischen Schlüssel beider Arrays in Zeichenfolgen umgewandelt, um sicherzustellen, dass sie zu assoziativen Arrays werden. Der folgende Code demonstriert dies:

$ar1 = [
    ['gross_value' => '100', 'quantity' => '1'],
    ['gross_value' => '200', 'quantity' => '1']
];

$ar2 = [
    ['item_title_id' => '1', 'order_id' => '4'],
    ['item_title_id' => '2', 'order_id' => '4']
];

$ar1 = array_map('array_values', $ar1);
$ar2 = array_map('array_values', $ar2);

Nach der Konvertierung der Arrays können sie mit array_merge_recursive zusammengeführt werden:

$result = array_merge_recursive($ar1, $ar2);
print_r($result);

Dieser Code führt die Schlüssel-Wert-Paare aus beiden Arrays zusammen und erzeugt das gewünschte Ergebnis:

[
    ['gross_value' => '100', 'quantity' => '1', 'item_title_id' => '1', 'order_id' => 4],
    ['gross_value' => '200', 'quantity' => '1', 'item_title_id' => '2', 'order_id' => 4]
]

Das obige ist der detaillierte Inhalt vonWie füge ich in PHP zwei Arrays mit Schlüssel-Wert-Paaren zu einem einzigen Array zusammen?. 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