php array_merge 和 + 区别
做人要谦虚,多听听他人的意见,然后认真记下他们的名字。
区别:
1、当键值是字符串,键名相同时,array_merge()后边值覆盖前面的值,+是前盖后;
2、当键值是数值,键名相同时,array_merge()不会覆盖,+是前盖后;
array_merge 不会覆盖,但是会格式化健名
eg:
<?php
$a = [1=>'1', 2=>'2', 'a'=>'a'];
$b = [1=>'1b', 2=>'2b', 3=>'3b'];
print_r($a + $b);
print_r(array_merge($a, $b));
?>
+ 输出结果
Array ( [1] => 1 [2] => 2 [a] => a [3] => 3b )
array_merge 输出结果
Array ( [0] => 1 [1] => 2 [a] => a [2] => 1b [3] => 2b [4] => 3b )