您好,登录后才能下订单哦!
小编给大家分享一下PHP实现合并数组的方法有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
示例代码:
$arr1 = array(1, 2, 3, 4, 5); $arr2 = array(1, 2, 6, 7, 8, 9, 10); $result1 = array_merge($arr1, $arr2); $arr3 = array("name" => "itbsl", "age" => 13, "sex" => "Male"); $arr4 = array("name" => "火龙果", "age" => 13, "sex" => "Male"); $result2 = array_merge($arr3, $arr4); echo "<pre>"; var_dump($result1); var_dump($result2);
运行上面的代码,输出结果如下图所示:
普通数组合并时,会把第二个数组放到第一个数组后面,拼接后返回。
但是对于键值对的数组来说,如果有相同的键,那么第二个数组会覆盖第一个数组相同的键所对应的值。
+
合并示例代码:
$arr1 = array(1, 2, 3, 4, 5); $arr2 = array(1, 2, 6, 7, 8, 9, 10); $result1 = $arr1 + $arr2; $arr3 = array("name" => "itbsl", "age" => 13, "sex" => "Male"); $arr4 = array("name" => "火龙果", "age" => 13, "sex" => "Male", "id" => "411521"); $result2 = $arr3 + $arr4; echo "<pre>"; var_dump($result1); var_dump($result2);
运行上面的代码,输出结果如下图所示:
可以看到,对于用"+"来合并两个数组而言,无论是普通数组还是键值对型数组,只要下标相同或者键相同,都是前者覆盖后者。这一点需要注意。
array_combine()
函数会得到一个新数组,它由一组提交的键和对应的值组成。
示例代码:
$arr1 = array("A","B","C","D"); $arr2 = array("paul","itbsl","Golang","PHP"); $result = array_combine($arr1,$arr2); echo '<pre>'; var_dump($result);
运行上面的代码,输出结果如下图所示:
注意:如果需要合并数组成为上面的形式,那么合并的两个数组的长度必须相等,也就是count($arr1) == count($arr2),并且不能为空
array_merge_recursive()
函数与array_merge()
相同,可以将两个或多个数组合并在一起,形成一个联合的数组.两者之间的区别在于,当某个输入数组中的某个键己经存在于结果数组中时该函数会采取不同的处理方式.array_merge()
会覆盖前面存在的键/值对,替换为当前输入数组中的键/值对,而array_merge_recursive()
将把两个值合并在一起,形成一个新的数组,并以原有的键作为数组名。
示例代码:
$arr3 = array("name" => "itbsl", "age" => 13, "sex" => "Male"); $arr4 = array("name" => "火龙果", "age" => 13, "sex" => "Male"); $result2 = array_merge_recursive($arr3, $arr4); echo "<pre>"; var_dump($result2);
运行上面的代码,输出结果如下图所示:
以上是PHP实现合并数组的方法有哪些的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。