Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Menggabungkan Tatasusunan Bersekutu PHP Semasa Memelihara Kekunci Unik?

Bagaimanakah Saya Boleh Menggabungkan Tatasusunan Bersekutu PHP Semasa Memelihara Kekunci Unik?

Patricia Arquette
Lepaskan: 2024-12-17 18:15:20
asal
284 orang telah melayarinya

How Can I Merge PHP Associative Arrays While Preserving Unique Keys?

Menggabungkan Tatasusunan Bersekutu dengan Kekunci Unik

Dalam PHP, tatasusunan bersekutu menggunakan kekunci rentetan untuk mengakses nilai. Apabila menggabungkan dua tatasusunan sedemikian, kunci pendua boleh menyebabkan kehilangan nilai asal. Untuk mengelakkan ini, adalah perlu untuk mengekalkan kunci asal semasa menggabungkan tatasusunan.

Pertimbangkan contoh berikut:

$array1 = [
    '11' => '11',
    '22' => '22',
    '33' => '33',
    '44' => '44'
];

$array2 = [
    '44' => '44',
    '55' => '55',
    '66' => '66',
    '77' => '77'
];
Salin selepas log masuk

Matlamatnya adalah untuk menggabungkan $array1 dan $array2 supaya result mengekalkan kunci asal dan mengalih keluar pendua, menghasilkan:

$output = [
    '11' => '11',
    '22' => '22',
    '33' => '33',
    '44' => '44',
    '55' => '55',
    '66' => '66',
    '77' => '77'
];
Salin selepas log masuk

Menggunakan array_unique fungsi dalam kombinasi dengan array_merge tidak mencapai hasil yang diingini kerana ia menetapkan semula kunci. Pendekatan yang lebih cekap ialah menggunakan operator, yang mengekalkan kunci asal apabila menggabungkan tatasusunan:

$output = $array1 + $array2;
Salin selepas log masuk

Operasi ini menggabungkan dua tatasusunan dengan berkesan, menimpa nilai pendua. Sebagai alternatif, untuk mencipta semula kunci secara eksplisit, kod berikut boleh digunakan:

$output = array_combine($output, $output);
Salin selepas log masuk

Kedua-dua kaedah menyediakan penyelesaian kepada masalah menggabungkan tatasusunan bersekutu dengan kunci unik sambil mengekalkan nilai asal.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggabungkan Tatasusunan Bersekutu PHP Semasa Memelihara Kekunci Unik?. 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