mysql - PHP多个二维数组合并成一个二维数组,值相同的覆盖
本文介绍了mysql - PHP多个二维数组合并成一个二维数组,值相同的覆盖的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
array(
[0] => Array ( [name] => 张11 [phone] => 18694934232 [province] => 广东 )
[1] => Array ( [name] => 吴凯胜 [phone] => 15250360105 [province] => 湖北 )
[2] => Array ( [name] => 魏海洋 [phone] => 18513235609 [province] => 天津 )
[3] => Array ( [name] => 张国华 [phone] => 13063730110 [province] => 北京 )
[4] => Array ( [name] => 周传勇 [phone] => 13584423937 [province] => 重庆 )
[5] => Array ( [name] => 杨铭泽 [phone] => 13358038057 [province] => 安徽 )
[6] => Array ( [name] => 马久红 [phone] => 13812577058 [province] => 山东 )
[7] => Array ( [name] => 蔡兵 [phone] => 18625133441 [province] => 湖南 )
[8] => Array ( [name] => 蒋磊峰 [phone] => 18626169956 [province] => 浙江 )
[9] => Array ( [name] => 肖邦禹 [phone] => 18651457077 [province] => 江苏 )
[10] => Array ( [name] => 马晓天 [phone] => 13921351007 [province] => 河北 )
[11] => Array ( [name] => 吴凯胜 [num] => 2 )
[12] => Array ( [name] => 周传勇 [num] => 2 )
[13] => Array ( [name] => 张国华 [num] => 2 )
[14] => Array ( [name] => 张11 [num] => 2 )
[15] => Array ( [name] => 杨铭泽 [num] => 2 )
[16] => Array ( [name] => 肖邦禹 [num] => 3 )
[17] => Array ( [name] => 蒋磊峰 [num] => 2 )
[18] => Array ( [name] => 蔡兵 [num] => 2 )
[19] => Array ( [name] => 马久红 [num] => 2 )
[20] => Array ( [name] => 魏海洋 [num] => 2 )
[21] => Array ( [name] => 吴凯胜 [station] => 3 )
[22] => Array ( [name] => 张国华 [station] => 3 )
[23] => Array ( [name] => 张11 [station] => 14 )
[24] => Array ( [name] => 马久红 [station] => 1 )
[25] => Array ( [name] => 魏海洋 [station] => 2 )
[26] => Array ( [total] => 1 [code_num] => 1 [cishu] => 0 [name] => 张11 )
[27] => Array ( [total] => 1 [code_num] => 1 [cishu] => 0 [name] => 吴凯胜 )
[28] => Array ( [total] => 1 [code_num] => 1 [cishu] => 0 [name] => 魏海洋 )
[29] => Array ( [total] => 1 [code_num] => 1 [cishu] => 0 [name] => 张国华 )
[30] => Array ( [total] => 1 [code_num] => 1 [cishu] => 0 [name] => 周传勇 )
[31] => Array ( [total] => 1 [code_num] => 1 [cishu] => 0 [name] => 杨铭泽 )
[32] => Array ( [total] => 1 [code_num] => 1 [cishu] => 0 [name] => 马久红 )
[33] => Array ( [total] => 1 [code_num] => 1 [cishu] => 0 [name] => 蔡兵 )
[34] => Array ( [total] => 1 [code_num] => 1 [cishu] => 0 [name] => 蒋磊峰 )
[35] => Array ( [total] => 0 [code_num] => 0 [cishu] => 0 [name] => )
[36] => Array ( [total] => 1 [code_num] => 1 [cishu] => 0 [name] => 马晓天 )
[37] => Array ( [usernum] => 1 [usermoney] => 5 [phone] => 13063730110 [name] => 张国华 )
[38] => Array ( [usernum] => 12 [usermoney] => 60 [phone] => 18513235609 [name] => 魏海洋 )
[39] => Array ( [num] => 1 [name] => 张国华 )
[40] => Array ( [num] => 12 [name] => 魏海洋 )
[41] => Array ( [name] => 张国华 [userId] => 2467 [money] => 419002.38 )
[42] => Array ( [name] => 魏海洋 [userId] => 473048 [money] => 0.01 )
)
想实现的结果是
array(
[0] => Array ( [name] => 魏海洋 [phone] => 13063730110 [province] => 天津 [num] => 2 [station] => 2 [total] => 1 [code_num] => 1 [cishu] => 0 [usernum] => 12 [usermoney] => 60 [money] => 0.01 )
[1] => Array ( [name] => 张国华 [phone] => 13063730110 [province] => 北京 [num] => 2 [station] => 3 [total] => 1 [code_num] => 1 [cishu] => 0 [usernum] => 1 [usermoney] => 5 [money] => 419002.38 )
)
解决方案
$data = [
Array ( 'usernum' => 1 , 'usermoney' => 5 , 'phone' => 13063730110, 'name' => '张国华' ),
Array ( 'usernum' => 12 ,'usermoney' => 60 ,'phone' => 18513235609, 'name' => '魏海洋' ) ,
Array ( 'num' => 1 ,'name' => '张国华' ) ,
Array ( 'num' => 12 ,'name' => '魏海洋' ) ,
Array ( 'name' => '张国华', 'userId' => 2467 , 'money' => 419002.38 ),
Array ( 'name' => '魏海洋', 'userId' => 473048, 'money' => 0.01 ) ,
];
$res=[];
foreach ($data as $key => $value) {
if (!isset($res[$value['name']])) {
$res[$value['name']] = $value;
} else {
$res[$value['name']] += $value;
}
}
print_r(array_values($res));
Array
(
[0] => Array
(
[usernum] => 1
[usermoney] => 5
[phone] => 13063730110
[name] => 张国华
[num] => 1
[userId] => 2467
[money] => 419002.38
)
[1] => Array
(
[usernum] => 12
[usermoney] => 60
[phone] => 18513235609
[name] => 魏海洋
[num] => 12
[userId] => 473048
[money] => 0.01
)
)
这篇关于mysql - PHP多个二维数组合并成一个二维数组,值相同的覆盖的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文