php合并数组

https://blog.csdn.net/oMiracle123/article/details/74182286?locationNum=5&fps=1
 
 

合并数组的方法

  1. array_merge:

    • 数字键,直接往后添加,key重置
    • 字符串键,后面的数组的值会替代前面的值
  2. +:

    • 数字键,后面的数组的值不会替代前面的值
    • 字符串键,后面的数组的值会替代前面的值
 
 

合并数组并去重

//1.单数组去重复
    array_unique($arrTest)
//2.多数组去重复
    array_keys(array_flip($arr1)+array_flip($arr2))

php array_merge合并方法
例子1,数组使用字符串键名,相同的键名会被后面的覆盖
<?php
$arr1 = array('name'=>'fdipzone');
$arr2 = array('name'=>'terry');
$result = array_merge($arr1, $arr2);
print_r($result);
?>
输出:
Array
(
    [name] => terry
)
例子2,数组使用 数字键名,键名相同不会覆盖,且键名会重新索引
<?php
$arr1 = array(0=>'fdipzone',1=>'terry');
$arr2 = array(0=>'php',1=>'python');
$result = array_merge($arr1, $arr2);
print_r($result);
?>
输出:
Array
(
    [0] => fdipzone
    [1] => terry
    [2] => php
    [3] => python
)
使用array_merge合并两部分答案
<?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);
?>
输出
Array
(
    [0] => A
    [1] => B
    [2] => C
    [3] => D
    [4] => B
    [5] => A
    [6] => D
    [7] => C
)
合并数组并保留键值的方法:
<?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);
?>
输出:
Array
(
    [11] => A
    [12] => B
    [13] => C
    [14] => D
    [25] => B
    [26] => A
    [27] => D
    [28] => C
)
 
 
$arr = ['a'=>12,'b'=>13];
$arr1 = ['a'=>14,'b'=>15,0=>1,1=>2];
$fild = $arr + $arr1;
print_r($fild); Array ( [a] => 12 [b] => 13 [0] => 1 [1] => 2 ) 
使用 “+” 运算符合并数组,可以保留数组的键值,如果合并的数组中含有相同的键值,后面的不会覆盖前面的键值(保留前面的值,丢弃后面的)。

查看原文: http://newmiracle.cn/?p=1772

猜你喜欢

转载自blog.csdn.net/gaisidewangzhan1/article/details/80245456