php关于长度不一致,字段也不一致,但有唯一的关联字段的两个数组的合并问题

以数组二为基准,合并两个数组,方式有两种:

第一种:

$res = [];
foreach($data as $v1) {
   //先把v1里面的赋值给data
   $res[$v1['uid']] = $v1['score'];
}
foreach($usersName as &$v2) {
   if(!array_key_exists($v2['uid'], $res)) $v2['score'] = 0; //没有分数.0
   else $v2['score'] = $res[$v2['uid']];
}

得出结果为: dump($userName)

第二种:

$res = [];

foreach ($usersName as $ku => $vu){
$res[$ku]['score'] = 0;
   foreach ($data as $ka => $va){

      if ($vu['uid'] ==  $va['uid']){
            $res[$ku]['score'] = $va['score'];
      }
   }
   $res[$ku]['uname'] = $vu['username'];

}

得出结果为:dump($res);

猜你喜欢

转载自blog.csdn.net/u012436346/article/details/84849128
今日推荐