php array_merge 与 + 处理相同数组键名 的区别

相同数组键名为数字时

  • + 会保留最先出现的那个值
  • array_merge 会附加到后面
 $a = [1,2,3];
 $b = [11,22,33];
 print_r($a+$b);
 print_r(array_merge($a,$b));

//输出结果为

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
)
Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 11
    [4] => 22
    [5] => 33
)

相同数组键名为字符时

  • + 会保留最先出现的那个值
  • array_merge 会覆盖掉前面相同键名的值
 $a = ['a'=>1,'b'=>2,'c'=>3];
 $b = ['a'=>11,'b'=>22,'c'=>33];
print_r($a+$b);
print_r(array_merge($a,$b));

//输出结果为
Array
(
    [a] => 1
    [b] => 2
    [c] => 3
)
Array
(
    [a] => 11
    [b] => 22
    [c] => 33
)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、数组定义 array() 1、索引数组 在一个变量中,存储一个或多个值。数组中的每一个元素都有一个访问ID,根...
    竹与豆阅读 3,490评论 0 0
  • # 数组部分 # 1.## array_chunk($arr, $size [, $preserve_key = ...
    clothTiger阅读 4,932评论 0 1
  • 一、Array_key_exists();检查给定的键名或索引是否存在于数组中二、array_keys ()返回数...
    peng_js阅读 2,707评论 0 0
  • PHP数组函数,摘录于PHP手册 1、array_change_key_case (PHP 4 >= 4.2.0,...
    kotlin360阅读 4,001评论 2 1
  • 最近我的一个朋友诗诗,她遭遇了一个小公司的价格战,小公司抢走了很多她的客户,因为很多客户有贪便宜的心理,这是人之常...
    叶云同学阅读 4,170评论 2 0