这篇文章主要介绍PHP数组合并中+运算符和array_merge()之间有哪些区别,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
使用array_merge()函数合并数组
array_merge()函数是一个内置函数,可以用于连接一个或多个作为输入提供的数组,而不管它们的类型;并返回一个新数组。在此合并过程中,数组的值将附加到前一个数组的末尾,以生成结果数组。
语法:
array_merge( $arr1, $arr2, $arr3... )
参数: array_merge()函数接受一个或多个输入数组,并将它们合并为单个结果数组。
注意:在array_merge()函数中,如果输入数组具有相同的字符串键,则在结果数组中,该键的后一个值将覆盖前一个值。但是,如果数组包含数字键,那么值将不会被替换,它们只会附加到结果数组中。同样,在数字数组的情况下,结果数组中的键值将从零开始重新编号。
使用+运算符合并数组
合并两个数组的另一种方法就是通过使用“数组+数组”的方法。+运算符是一个二元运算符,意味着它一次只能合并两个数组;在此合并过程中,会将右侧数组追加到左手数组的末尾。
语法
$arr3 = $arr1 + $arr2
参数:(+)运算符一次处理两个数组并生成结果数组。
注意:如果使用(+)运算符合并数组,如果两个数组中有相同的键(无论是字符串键,还是数字键),则结果数组只会保留与键对应的左侧数组中的值,右侧数组的值将被忽略。
+运算符和array_merge()的区别
下面通过代码示例来看看+运算符和array_merge()之间的区别。
示例1:使用array_merge()合并数组
<?php
header("content-type:text/html;charset=utf-8");
$arr1 = array( 'zero' => 0,
'one' => 1,
'two' => 2, 10, 11, 12, 13
);
$arr2 = array( 'one' => 11,
'three' => 3,
'four' => 4, 12, 13, 14, 15
);
$arr3 = array_merge($arr1, $arr2);
echo "使用array_merge()合并数组的结果:<br>";
var_dump($arr3);
?>
输出:
使用array_merge()合并数组的结果:
array (size=13)
'zero' => int 0
'one' => int 11
'two' => int 2
0 => int 10
1 => int 11
2 => int 12
3 => int 13
'three' => int 3
'four' => int 4
4 => int 12
5 => int 13
6 => int 14
7 => int 15
示例2:使用(+)运算符合并数组
<?php
header("content-type:text/html;charset=utf-8");
$arr1 = array( 'zero' => 0,
'one' => 1,
'two' => 2, 10, 11, 12, 13
);
$arr2 = array( 'one' => 11,
'three' => 3,
'four' => 4, 12, 13, 14, 15
);
$arr4 = $arr1 + $arr2;
echo "<br>使用(+)运算符合并数组的结果:<br>";
var_dump($arr4);
?>
输出:
使用(+)运算符合并数组的结果:
array (size=9)
'zero' => int 0
'one' => int 1
'two' => int 2
0 => int 10
1 => int 11
2 => int 12
3 => int 13
'three' => int 3
'four' => int 4
以上是PHP数组合并中+运算符和array_merge()之间有哪些区别的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。