php相同键值的数组合并

$a=array(array('user_id'=>1,'core'=>100),array('user_id'=>2,'core'=>200),array('user_... $a=array(array('user_id'=>1,'core'=>100),array('user_id'=>2,'core'=>200),array('user_id'=>3,'core'=>400));

$b = array(array('user_id'=>1,'three'=>100),array('user_id'=>2,'three'=>300));
需要得到:
$c = array(array('user_id'=>1,'core'=>100,'three'=>100),array('user_id'=>2,'core'=>200,'three'=>3000),array('user_id'=>3,'core'=>400);
展开
 我来答
zzs1949
2014-12-14 · TA获得超过1600个赞
知道小有建树答主
回答量:1250
采纳率:80%
帮助的人:1126万
展开全部

修改好了,代码可以直接运行

<?php

$a=array(array('user_id'=>1,'core'=>100),array('user_id'=>2,'core'=>200),array('user_id'=>3,'core'=>400));
        
$b = array(array('user_id'=>1,'three'=>100),array('user_id'=>2,'three'=>300));



foreach($a as $u=>$v){
    $new_a[$v['user_id']]=array('core'=>$v['core']);
}

foreach($b as $u=>$v){
    $new_b[$v['user_id']]=array('three'=>$v['three']);
}


foreach($new_a as $u=>$v){
    if(!empty($new_b[$u])){
        $new_a[$u]['three']=$new_b[$u]['three'];
    }
}

print_r($new_a);

?>
jack_wang0823
推荐于2016-05-04 · TA获得超过2957个赞
知道大有可为答主
回答量:4143
采纳率:87%
帮助的人:1448万
展开全部
<?
$a=array(array('user_id'=>1,'core'=>100),array('user_id'=>2,'core'=>200),array('user_id'=>3,'core'=>400));

$b = array(array('user_id'=>1,'three'=>100),array('user_id'=>2,'three'=>300));
$c=array();

for ($i=0; $i<sizeof($a);$i++){
$c[$i]['user_id']=$a[$i]['user_id'];
$c[$i]['core']= $a[$i]['core'];
if (isset($b[$i])){
$c[$i]['three']=$b[$i]['three'];
}

}
echo sizeof($c);
var_dump($c);

?>
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式