PHP之数组数数据合并

一.

假设是关联数组:
$a = array( 
'where' => 'uid=1', 
'order' => 'uid', 
); 
$b = array( 
'where' => 'uid=2', 
'order' => 'uid desc', 
); 

//数组合并通过+操作符,只要相加的两个数组存在相同的key,则前面的一个会覆盖后面的一个。

<?php 

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

$d = $b + $a; 

print_r($d);//结果与原来的$b相同 

//数组合并通过array_merge()方法,只要相加的两个数组存在相同的key,则后面的一个会覆盖前面的一个。

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

二.如果是数字索引数组,

$a = array( 
1 => '1111111', 
2 => '222222222' 
); 
$b = array( 
4 => '33333333333', 
1 => '444444444' 
); 

1. array_merge. 效果类似代码foreach每个数组元素,然后将每个元素压入一个新堆栈当中 

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

输出: 
array ( 
0 => '1111111', 
1 => '222222222', 
2 => '33333333333', 
3 => '444444444', 

array ( 
0 => '33333333333', 
1 => '444444444', 
2 => '1111111', 
3 => '222222222', 

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

<?php 
$c = $a + $b; 
var_export($c); 
$d = $b + $a; 
var_export($d); 

输出: 
array ( 
1 => '1111111', 
2 => '222222222', 
4 => '33333333333', 

array ( 
4 => '33333333333', 
1 => '444444444', 
2 => '222222222', 
)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值