Bagaimana untuk Mengekalkan Pasangan Nilai Kunci Apabila Menggabungkan Tatasusunan dengan Kekunci Pendua?

Barbara Streisand
Lepaskan: 2024-11-02 23:32:29
asal
870 orang telah melayarinya

How to Preserve Key-Value Pairs When Merging Arrays with Duplicate Keys?

Memelihara Pasangan Nilai Kunci Sedia Ada apabila Menggabung Tatasusunan

Dalam pengaturcaraan, situasi timbul di mana anda perlu menggabungkan dua tatasusunan sambil memastikan kunci itu- pasangan nilai daripada kedua-dua tatasusunan dikekalkan. Ini menjadi cabaran apabila kekunci pendua wujud.

Mari kita pertimbangkan contoh yang disediakan:

<code class="php">$A = array('a' => 1, 'b' => 2, 'c' => 3);
$B = array('c' => 4, 'd' => 5);

array_merge($A, $B);

// result
[a] => 1 [b] => 2 [c] => 4 [d] => 5</code>
Salin selepas log masuk

Seperti yang ditunjukkan, menggunakan fungsi array_merge mengakibatkan kehilangan 'c' => 3 pasangan nilai kunci. Untuk menangani isu ini, kita perlu menggunakan pendekatan yang berbeza.

Fungsi array_merge_recursive direka khusus untuk senario sedemikian. Tidak seperti array_merge, ia menggabungkan tatasusunan secara rekursif, memastikan pasangan nilai kunci yang sama dipelihara. Tatasusunan yang terhasil akan mengandungi kedua-dua nilai yang dikaitkan dengan kunci pendua.

Untuk contoh yang diberikan, menggunakan array_merge_recursive akan menghasilkan:

<code class="php">array_merge_recursive($A, $B);

// result
[a] => 1 [b] => 2 [c] => [0 => 3, 1 => 4] [d] => 5</code>
Salin selepas log masuk

Seperti yang anda lihat, kekunci 'c' kini mengandungi tatasusunan dengan kedua-dua 3 dan 4 sebagai nilainya. Pendekatan ini membolehkan anda menggabungkan tatasusunan sambil mengekalkan integriti perhubungan nilai kunci sedia ada.

Atas ialah kandungan terperinci Bagaimana untuk Mengekalkan Pasangan Nilai Kunci Apabila Menggabungkan Tatasusunan dengan Kekunci Pendua?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan