Rumah >pembangunan bahagian belakang >tutorial php >Apakah fungsi sambungan lain untuk penggabungan tatasusunan PHP?
PHP menyediakan 3 fungsi sambungan untuk menggabungkan tatasusunan: array_merge_recursive() mencantumkan tatasusunan secara rekursif, array_replace() menimpa nilai dengan nama kunci yang sama dan array_replace_recursive() menimpa nilai secara rekursif dalam tatasusunan.
Fungsi sambungan lain untuk penggabungan tatasusunan PHP
Selain fungsi array_merge()
, PHP juga menyediakan fungsi sambungan lain untuk menggabungkan tatasusunan. Fungsi ini menyediakan pilihan penggabungan berbeza yang boleh digunakan untuk mengendalikan situasi yang lebih kompleks. array_merge()
函数外,PHP 还提供了其他扩展函数来合并数组。这些函数提供了不同的合并选项,可用于处理更复杂的情况。
1. array_merge_recursive()
该函数递归合并两个或多个数组。与 array_merge()
不同,它不会覆盖现有的键名,而是将它们的子数组合并到最终结果中。
$arr1 = ['a' => 1, 'b' => ['c' => 3, 'd' => 4]]; $arr2 = ['a' => 2, 'b' => ['e' => 5, 'f' => 6]]; $result = array_merge_recursive($arr1, $arr2); var_dump($result);
输出:
array(2) { ["a"]=> int(2) ["b"]=> array(3) { ["c"]=> int(3) ["d"]=> int(4) ["e"]=> int(5) } }
2. array_replace()
该函数用第二个数组替换第一个数组中的相同键名的值。它不会合并数组,而是将第一个数组中的值覆盖为第二个数组中的值。
$arr1 = ['a' => 1, 'b' => 2, 'c' => 3]; $arr2 = ['b' => 4, 'd' => 5]; $result = array_replace($arr1, $arr2); var_dump($result);
输出:
array(4) { ["a"]=> int(1) ["b"]=> int(4) ["c"]=> int(3) ["d"]=> int(5) }
3. array_replace_recursive()
该函数类似于 array_replace()
1. array_merge_recursive()
🎜🎜Fungsi ini menggabungkan dua atau lebih tatasusunan secara rekursif. Tidak sepertiarray_merge()
, ia tidak menimpa nama kunci sedia ada, tetapi menggabungkan subbarray mereka ke dalam hasil akhir. 🎜$arr1 = ['a' => 1, 'b' => ['c' => 3, 'd' => 4]]; $arr2 = ['b' => ['e' => 5, 'f' => 6]]; $result = array_replace_recursive($arr1, $arr2); var_dump($result);🎜Output: 🎜
array(2) { ["a"]=> int(1) ["b"]=> array(2) { ["e"]=> int(5) ["f"]=> int(6) } }🎜🎜2. array_replace()🎜🎜🎜Fungsi ini menggantikan nilai nama kunci yang sama dalam tatasusunan pertama dengan tatasusunan kedua. Ia tidak menggabungkan tatasusunan, tetapi menimpa nilai dalam tatasusunan pertama dengan nilai dalam tatasusunan kedua. 🎜rrreee🎜Output: 🎜rrreee🎜🎜3. array_replace_recursive()🎜🎜🎜Fungsi ini serupa dengan
array_replace()
, tetapi ia menggantikan nilai dalam tatasusunan secara rekursif. Ini bermakna bahawa nilai dalam subarray juga akan diganti. 🎜rrreee🎜Output: 🎜rrreeeAtas ialah kandungan terperinci Apakah fungsi sambungan lain untuk penggabungan tatasusunan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!