本文主要介绍php数组合并的一些知识,看以下例子:

关联数组

$a = array( 
    'uid' => '1', 
    'name' => '张三', 
); 
$b = array( 
    'uid' => '2', 
    'name' => '李四', 
);

1.array_merge,如果两个数组存在相同的key,后面的一个会覆盖前面的 

$c = array_merge($a, $b); 
var_export($c);//结果与原来的$b相同 
$d = array_merge($b, $a); 
var_export($d);//结果与原来的$a相同

2. "+"操作符,如果两个数组存在相同的key,前面的一个会覆盖后面的

$c = $a + $b; 
var_export($c);//结果与原来的$a相同 
$d = $b + $a; 
var_export($d);//结果与原来的$b相同

索引数组

$a = array( 
1 => 'a', 
2 => 'b' 
); 
$b = array( 
4 => 'c', 
1 => 'd' 
);

1. array_merge. 是将每个元素压入一个新堆栈当中

$c = array_merge($a, $b); 
var_export($c); 
$d = array_merge($b, $a); 
var_export($d);

输出:

array (    
0 => 'a',    
1 => 'b',    
2 => 'c',    
3 => 'd',    
)
array (    
0 => 'c',    
1 => 'd',    
2 => 'a',    
3 => 'b',    
)

2. "+"操作符. 效果类似代码foreach每个数组元素,然后将每个元素压入一个新堆栈当中,如果同样的key已经存在则不处理 

$c = $a + $b; 
var_export($c); 
$d = $b + $a; 
var_export($d);

输出:

array (    
1 => 'a',    
2 => 'b',    
4 => 'c',    
)
array (    
4 => 'c',    
1 => 'd',    
2 => 'b',    
)