Rumah > Artikel > pembangunan bahagian belakang > Apakah kaedah untuk menggabungkan dua tatasusunan dalam PHP?
Kaedah untuk menggabungkan dua tatasusunan dalam PHP: 1. Cipta fail sampel PHP, takrifkan dua pembolehubah sebagai "$a" dan "$b", dan gunakan operator "+" untuk lulus "$a+$ b" formula Gabungkan nilai dua tatasusunan menjadi satu tatasusunan; 2. Gunakan sintaks "array_merge($a,$b)" untuk menggabungkan dua tatasusunan; 3. Gunakan "array_merge_recursive($a,$b)" sintaks untuk menggabungkan tatasusunan 4. , gunakan sintaks "array_combine($a,$b)" untuk menggabungkan dua tatasusunan.
Persekitaran pengendalian tutorial ini: sistem Windows 10, PHP versi 8.1.3, komputer DELL G3
Kaedah menggabungkan dua tatasusunan PHP ialah :
1 Gunakan operator tambah "+":
cantumkan terus nilai dua tatasusunan menjadi satu
<?php $a = [1,2,3,'a'=>'a']; $b = ['a'=>'b',4,5,'b'=>'c',6,7,'a']; $c = $a + $b; var_dump($a); var_dump($b); var_dump($c); ?>
Hasil keluaran:
Gunakan "+" untuk menggabungkan tatasusunan Jika kunci adalah sama, nilai tatasusunan sebelumnya akan menimpa nilai tatasusunan kemudian.
2. Gunakan fungsi array_merge()
untuk menggabungkan kedua-dua tatasusunan secara langsung Apabila kekunci dua tatasusunan adalah sama, nilai tatasusunan yang terakhir akan menimpa nilai yang sebelumnya. tatasusunan
<?php $a = [1,'2'=>2,'a'=>'a','b'=>'b']; $b = [1,'2'=>3,'a'=>'c','b'=>'d','c'=>'e']; $c = array_merge($a,$b); var_dump($a); var_dump($b); var_dump($c); ?>
Hasil keluaran:
Dapat dilihat apabila kedua-dua kekunci tatasusunan adalah sama, nilai tatasusunan yang terakhir menimpa nilai tatasusunan sebelumnya. Walau bagaimanapun, untuk indeks angka atau indeks rentetan angka, ia akan ditetapkan semula mengikut tertib (elemen indeks angka pertama tatasusunan pertama diisi dalam urutan bermula dari 0)
3 Gunakan fungsi array_merge_recursive()
Gabungkan tatasusunan, apabila menemui kunci yang sama, cantumkan nilai dalam kunci ke dalam sub-tatasusunan
<?php $a = [1,'2'=>2,'a'=>'a','b'=>'b']; $b = [1,'2'=>3,'a'=>'a','b'=>'d','c'=>'e']; $c = array_merge_recursive($a,$b); var_dump($a); var_dump($b); var_dump($c); ?>
Hasil keluaran:
Gunakan kaedah "array_merge_recursive", elemen dengan kunci yang sama akan disepadukan ke dalam tatasusunan baharu, mengekalkan nama kunci tidak berubah, sebagai sub-elemen tatasusunan yang digabungkan (tatasusunan yang digabungkan oleh $a dan $b). Tetapi untuk indeks berangka atau indeks rentetan angka, ia akan ditetapkan semula mengikut tertib (elemen indeks berangka pertama tatasusunan pertama diisi secara berurutan bermula dari 0). Walaupun indeks berangka yang sepadan adalah sama, elemen dengan indeks yang sama tidak akan disepadukan ke dalam subarray.
4. Gunakan fungsi array_combine()
fungsi array_combine() mencipta tatasusunan baharu dengan menggabungkan dua tatasusunan, di mana elemen satu tatasusunan ialah nama kunci dan unsur tatasusunan yang lain ialah kunci .
Nota: Bilangan elemen dalam tatasusunan nama kunci dan tatasusunan nilai kunci mestilah sama!
<?php $a=array("a","b","c","d"); $b=array("red","green","blue","yellow"); $c = array_combine($a,$b); var_dump($a); var_dump($b); var_dump($c); ?>
Hasil keluaran:
Atas ialah kandungan terperinci Apakah kaedah untuk menggabungkan dua tatasusunan dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!