两个数组没有指定索引的状况
$a = [1,2,3,];$b = [1,2,3,'4','5','6'];var_dump($a+$b);//后面的数组中雷同键值的元素会笼罩前面数组中的元素array(5) { [0]=> int(1) [1]=> int(2) [2]=> int(3) [3]=> string(1) "4" [4]=> string(1) "5"}//当两个数组都没有给定索引的花,array_merge不会比拟var_dump(array_merge($a,$b));array(8) { [0]=> int(1) [1]=> int(2) [2]=> int(3) [3]=> int(1) [4]=> int(2) [5]=> int(3) [6]=> string(1) "4" [7]=> string(1) "5"}
当两个数组都有指定索引的时候
$a = ['a' => 1, 'b' => 2, 'c' => 3];$b = ['a' => 11, 'b' => 22, 'c' => 33, 'd' => '44', 'e' => '55'];//雷同索引,后面的数组会笼罩前面数组对应的值var_dump($a+$b);array(5) { ["a"]=>int(1) ["b"]=>int(2) ["c"]=>int(3) ["d"]=>string(2) "44" ["e"]=>string(2) "55"}//雷同索引,前面数组对应的值会笼罩后面数组var_dump(array_merge($a,$b));array(5) { ["a"]=>int(11) ["b"]=>int(22) ["c"]=>int(33) ["d"]=> string(2) "44" ["e"]=> string(2) "55"}