在php中,可以利用加号“+”来合并数组,具体语法格式“数组1+数组2”,这样数组合并且数组的键名不会重置。使用加号“+”合并两个数组,无论是普通数组还是键值对型数组,只要下标相同或者键相同,都是前者覆盖后者。
本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑
一般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 class="brush:php;toolbar:false">"; var_dump($result1); var_dump($result2);
得到结果:
推荐学习:《PHP视频教程》
以上是php怎么数组合并但键名不变的详细内容。更多信息请关注PHP中文网其他相关文章!