Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Mengekalkan Kekunci Asal Apabila Menggabungkan Tatasusunan PHP Berkunci Secara Numerik?

Bagaimanakah Saya Boleh Mengekalkan Kekunci Asal Apabila Menggabungkan Tatasusunan PHP Berkunci Secara Numerik?

Linda Hamilton
Lepaskan: 2024-12-13 21:31:26
asal
827 orang telah melayarinya

How Can I Preserve Original Keys When Merging Numerically-Keyed PHP Arrays?

Kekalkan Kekunci Asal Semasa Menggabungkan Tatasusunan Bersekutu Berkunci Berangka

Apabila menggabungkan tatasusunan bersekutu dengan elemen berkunci berangka, selalunya wajar untuk mengekalkan nilai kunci asal. Walau bagaimanapun, fungsi array_merge mungkin menimpa atau menomborkan semula kekunci apabila berurusan dengan kekunci pendua.

Sebagai contoh, tatasusunan yang diberikan seperti ini:

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

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

Percubaan untuk menggabungkan tatasusunan ini menggunakan array_merge boleh membawa kepada kunci perubahan:

$output = array_unique(array_merge($array1, $array2));
Salin selepas log masuk

Pendekatan ini menukar kunci output kepada berasaskan 0 integer.

Untuk mengekalkan kekunci asal, gunakan kaedah berikut:

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

Dengan menggunakan operator penambahan ( ), PHP menggabungkan tatasusunan dan mengekalkan kekunci berangka asal. Hasilnya ialah:

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

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengekalkan Kekunci Asal Apabila Menggabungkan Tatasusunan PHP Berkunci Secara Numerik?. 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