Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Menambah Tatasusunan Tanpa Mengubah Kekunci dalam PHP?

Bagaimana untuk Menambah Tatasusunan Tanpa Mengubah Kekunci dalam PHP?

DDD
DDDasal
2024-11-06 05:46:021119semak imbas

How to Append Arrays Without Altering Keys in PHP?

Menambah Tatasusunan Tanpa Mengubah Kekunci dalam PHP

Menambahkan satu tatasusunan kepada yang lain tanpa menjejaskan kuncinya adalah penting apabila anda ingin menggabungkan data sambil mengekalkan indeks sedia ada. Dalam PHP, beberapa pilihan tersedia untuk tugasan ini, termasuk array_merge.

Pertimbangkan contoh berikut:

<code class="php">$a = array('a', 'b');
$b = array('c', 'd');</code>

Kami ingin menggabungkan tatasusunan ini untuk mendapatkan output yang diingini berikut:

<code class="php">Array( [0]=>a [1]=>b [2]=>c [3]=>d )</code>

Kaedah Tradisional

Satu cara untuk mencapainya ialah menggunakan gelung foreach:

<code class="php">foreach ($b AS $var) {
    $a[] = $var;
}</code>

Kaedah ini mempunyai kelemahan: ia boleh membosankan untuk menggelung dan menambah elemen secara manual.

Penyelesaian Elegan: array_merge

PHP menyediakan fungsi terbina dalam dipanggil array_merge yang direka khusus untuk menggabungkan tatasusunan:

<code class="php">$merge = array_merge($a, $b);</code>

Apabila kita menjalankan kod ini, $merge akan mengandungi hasil yang diingini:

<code class="php">Array( [0]=>a [1]=>b [2]=>c [3]=>d )</code>

Elakkan Operator

Manakala array_merge ialah pilihan pilihan untuk menambahkan tatasusunan, perlu diperhatikan bahawa pengendali harus dielakkan untuk tujuan ini.

<code class="php">$merge = $a + $b;</code>

Operasi ini sebenarnya tidak akan menggabungkan tatasusunan. Sebaliknya, ia hanya akan menimpa sebarang kunci pendua dalam $a dengan nilai yang sepadan daripada $b.

Atas ialah kandungan terperinci Bagaimana untuk Menambah Tatasusunan Tanpa Mengubah Kekunci 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