php合并数组并保留键值的方法

php合并数组并保留键值的方法
例子1,数组使用字符串键名,相同的键名会被后面的覆盖
<pre>
<?php
$arr1 = array('name'=>'fdipzone');
$arr2 = array('name'=>'terry');

$result = array_merge($arr1, $arr2);

print_r($result);
?>
</pre>
输出:
<pre>
Array
(
[name] => terry
)
</pre>
例子2,数组使用数字键名,键名相同不会覆盖,且键名会重新索引
<pre>
<?php
$arr1 = array(0=>'fdipzone',1=>'terry');
$arr2 = array(0=>'php',1=>'python');

$result = array_merge($arr1, $arr2);

print_r($result);
?>
</pre>
输出:
<pre>
Array
(
[0] => fdipzone
[1] => terry
[2] => php
[3] => python
)
</pre>
使用array_merge合并两部分答案
<pre>
<?php
$form_data1 = array(11=>'A',12=>'B',13=>'C',14=>'D');
$form_data2 = array(25=>'B',26=>'A',27=>'D',28=>'C');

$result = array_merge($form_data1, $form_data2);

print_r($result);
?>
</pre>
输出
<pre>
Array
(
[0] => A
[1] => B
[2] => C
[3] => D
[4] => B
[5] => A
[6] => D
[7] => C
)
</pre>
合并数组并保留键值的方法:
<pre>
<?php
$form_data1 = array(11=>'A',12=>'B',13=>'C',14=>'D');
$form_data2 = array(25=>'B',26=>'A',27=>'D',28=>'C');

$result = $form_data1 + $form_data2;

print_r($result);
?>
</pre>
输出:
<pre>
Array
(
[11] => A
[12] => B
[13] => C
[14] => D
[25] => B
[26] => A
[27] => D
[28] => C
)
</pre>
使用 “+” 运算符合并数组,可以保留数组的键值,如果合并的数组中含有相同的键值,后面的不会覆盖前面的键值(前面的优先)。 ps:这个仅仅针对 索引为数字的时候

原文地址:https://www.cnblogs.com/newmiracle/p/11865353.html