Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Menggabungkan Dua Tatasusunan dengan Pasangan Nilai Kunci ke dalam Tatasusunan Tunggal dalam PHP?

Bagaimana untuk Menggabungkan Dua Tatasusunan dengan Pasangan Nilai Kunci ke dalam Tatasusunan Tunggal dalam PHP?

Susan Sarandon
Susan Sarandonasal
2024-12-15 07:17:10672semak imbas

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

Menggabungkan Data Baris daripada Berbilang Tatasusunan

Menggabungkan data daripada berbilang tatasusunan ke dalam struktur padu tunggal boleh menjadi tugas pengaturcaraan biasa. Soalan ini meneroka senario di mana dua tatasusunan perlu digabungkan untuk menghasilkan tatasusunan baharu dengan atribut khusus.

Tasusunan pertama mengandungi dua elemen, setiap satu terdiri daripada "nilai_kasar" dan pasangan nilai kunci "kuantiti". . Tatasusunan kedua juga mengandungi dua elemen, setiap satu terdiri daripada pasangan nilai kunci "item_title_id" dan "id_pesanan".

Matlamatnya adalah untuk menggabungkan tatasusunan ini menjadi tatasusunan baharu di mana setiap elemen menggabungkan semua kunci- pasangan nilai daripada kedua-dua tatasusunan asal. Tatasusunan yang terhasil hendaklah mempunyai empat pasangan nilai kunci: "nilai_kasar," "kuantiti," "id_tajuk_item" dan "id_pesanan."

Penyelesaian

Pendekatan yang disyorkan untuk mencapai penggabungan ini adalah melalui penggunaan fungsi array_merge_recursive. Fungsi ini mengambil berbilang tatasusunan sebagai input dan mencantumkan nilainya secara rekursif.

Untuk bersedia untuk penggabungan, kekunci angka kedua-dua tatasusunan ditukar kepada rentetan, memastikan ia menjadi tatasusunan bersekutu. Kod berikut menunjukkan perkara ini:

$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);

Selepas menukar tatasusunan, ia boleh digabungkan menggunakan array_merge_recursive:

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

Kod ini akan menggabungkan pasangan nilai kunci daripada kedua-dua tatasusunan, menghasilkan hasil yang diingini:

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

Atas ialah kandungan terperinci Bagaimana untuk Menggabungkan Dua Tatasusunan dengan Pasangan Nilai Kunci ke dalam Tatasusunan Tunggal dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn