PHP根据键值合并数组,键值一样的合并
我们现在来分析一下在PHP开发过程中,如何合并两个数组,并且将相同键值的元素合并在一起。幼儿园设计
示例1
最简单的合并方式
1
2
3
4
5
6
7
8
9
10
11
12
|
$a = [ 1=> 'a' , 2=> 'b' , 3=> 'c' ]; $b = [ 3=> 'e' , 4=> 'f' , 5=> 'c' ]; $c = $a + $b ; print_r( $c ); |
输出:
1
|
Array ( [1] => a [2] => b [3] => c [4] => f [5] => c ) |
分析:$a[3]覆盖了$b[3],当数组存在相同键值的元素时,前面的数组将会后面相同键值的数组元素
示例2
用foreach循环赋值的方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
$a = [ 1=> 'a' , 2=> 'b' , 3=> 'c' ]; $b = [ 3=> 'e' , 4=> 'f' , 5=> 'a' ]; foreach ( $b as $key => $val ) { $a [ $key ] = $val ; } print_r( $a ); |
输出:
1
|
Array ( [1] => a [2] => b [3] => e [4] => f [5] => a ) |
分析:和示例1有点区别
用于做循环的数组$b将会覆盖数组$a的元素,而且只覆盖键值相同的元素