这篇文章给大家分享的是有关php如何数组合并但键名不变的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
在php中,可以利用加号“+”来合并数组,具体语法格式“数组1+数组2”,这样数组合并且数组的键名不会重置。使用加号“+”合并两个数组,无论是普通数组还是键值对型数组,只要下标相同或者键相同,都是前者覆盖后者。
一般PHP中合并两个数组都会使用array_merge()
例如:
$data1 = ['111' => 'aaa', '222' => 'bbb', '333' => 'ccc'];$data2 = ['444' => 'ddd', '555' => 'eee', '666' => 'fff'];$data = array_merge($data1, $data2);var_dump($data);
得到结果:
array(6) { [0]=> string(3) "aaa" [1]=> string(3) "bbb" [2]=> string(3) "ccc" [3]=> string(3) "ddd" [4]=> string(3) "eee" [5]=> string(3) "fff"}
可以看到使用array_merge()会重置key值,如果key值对我们有用,不想重置,可以使用"+"合并数组。
$data1 = ['111' => 'aaa', '222' => 'bbb', '333' => 'ccc'];$data2 = ['444' => 'ddd', '555' => 'eee', '666' => 'fff'];$data = $data1 + $data2;var_dump($data);
得到结果:
array(6) { [111]=> string(3) "aaa" [222]=> string(3) "bbb" [333]=> string(3) "ccc" [444]=> string(3) "ddd" [555]=> string(3) "eee" [666]=> string(3) "fff"}
说明:
对于用"+"来合并两个数组而言,无论是普通数组还是键值对型数组,只要下标相同或者键相同,都是前者覆盖后者。这一点需要注意。
$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);
得到结果:
感谢各位的阅读!关于“php如何数组合并但键名不变”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!