Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah anda menggabungkan tatasusunan bersekutu dalam PHP sambil mengekalkan struktur nilai kuncinya?

Bagaimanakah anda menggabungkan tatasusunan bersekutu dalam PHP sambil mengekalkan struktur nilai kuncinya?

Patricia Arquette
Patricia Arquetteasal
2024-10-29 05:29:31954semak imbas

How do you combine associative arrays in PHP while preserving their key-value structure?

Menggabungkan Tatasusunan Bersekutu dalam PHP

Menggabungkan tatasusunan bersekutu boleh menjadi tugas biasa dalam PHP. Untuk mencapai matlamat ini, pelbagai pilihan tersedia, masing-masing mempunyai kelebihan dan batasannya sendiri. Mari kita terokai dua kaedah popular:

array_merge()

array_merge() ialah fungsi PHP terbina dalam yang menggabungkan berbilang tatasusunan ke dalam satu tatasusunan dengan cekap. Ia menambahkan nilai tatasusunan berikutnya pada tatasusunan pertama.

<code class="php">$array1 = array("name1" => "id1");

$array2 = array("name2" => "id2", "name3" => "id3");

$array3 = array_merge($array1, $array2);</code>

Dalam contoh ini, $array3 akan menjadi tatasusunan bersekutu yang merangkumi kedua-dua pasangan nilai kunci daripada $array1 dan $array2.

Tambahan Tatasusunan

PHP juga membenarkan anda menambah tatasusunan menggunakan operator penambahan ( ). Walau bagaimanapun, kaedah ini menganggap tatasusunan sebagai tatasusunan ringkas dan tatasusunan yang terhasil akan kehilangan sifat bersekutu.

<code class="php">$array1 = array("name1" => "id1");

$array2 = array("name2" => "id2", "name3" => "id3");

$array4 = $array1 + $array2;</code>

Dalam kes ini, $array4 akan menjadi tatasusunan ringkas dengan nilai "id1", "id2" , dan "id3".

Pengujian

Untuk menguji unit kod anda, anda boleh mencipta kes ujian dengan konfigurasi tatasusunan yang berbeza dan menegaskan output yang dijangkakan. Berikut ialah contoh:

<code class="php">class ArrayMergeTest extends PHPUnit\Framework\TestCase {

  public function testArrayMerge() {
    $array1 = array("name1" => "id1");
    $array2 = array("name2" => "id2", "name3" => "id3");
    $expected = array("name1" => "id1", "name2" => "id2", "name3" => "id3");
    $result = array_merge($array1, $array2);
    $this->assertEquals($expected, $result);
  }

}</code>

Atas ialah kandungan terperinci Bagaimanakah anda menggabungkan tatasusunan bersekutu dalam PHP sambil mengekalkan struktur nilai kuncinya?. 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