Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Menggabungkan Berbilang Tatasusunan dengan Kekunci Berbeza ke dalam Tatasusunan Tunggal dalam PHP?

Bagaimanakah Saya Boleh Menggabungkan Berbilang Tatasusunan dengan Kekunci Berbeza ke dalam Tatasusunan Tunggal dalam PHP?

Linda Hamilton
Linda Hamiltonasal
2024-12-28 18:12:11575semak imbas

How Can I Merge Multiple Arrays with Different Keys into a Single Array in PHP?

Menggabungkan Data Baris daripada Berbilang Tatasusunan

Dalam usaha untuk menyatukan data daripada tatasusunan yang berbeza, pengguna baru-baru ini menghadapi cabaran dalam menggabungkan kandungan ke dalam format yang dikehendaki. Tatasusunan yang dimaksudkan mengandungi butiran seperti nilai kasar, kuantiti, ID tajuk item dan ID pesanan, seperti berikut:

Array 1:
[
    ['gross_value' => '100', 'quantity' => '1'],
    ['gross_value' => '200', 'quantity' => '1']
]

Array 2:
[
    ['item_title_id' => '1', 'order_id' => '4'],
    ['item_title_id' => '2', 'order_id' => '4']
];

Hasil yang dimaksudkan ialah tatasusunan yang digabungkan dengan semua medan digabungkan, menyerupai yang berikut:

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

Untuk menangani cabaran ini, penyelesaian telah dicadangkan menggunakan fungsi array_merge_recursive. Fungsi ini membolehkan gabungan tatasusunan bersekutu yang berkesan, memastikan kekunci pendua digabungkan dengan betul. Dengan menukar semua kunci angka kepada rentetan, tatasusunan menjadi bersekutu, menjadikannya serasi untuk digabungkan.

Coretan kod yang disediakan di bawah menunjukkan penggunaan penyelesaian 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']];

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

print_r($result);

Apabila dilaksanakan, kod menghasilkan format tatasusunan gabungan yang diingini, seperti yang dinyatakan dalam pernyataan masalah.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggabungkan Berbilang Tatasusunan dengan Kekunci Berbeza 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