2个数组相加,将一个数组写入另一个数组
程序员文章站
2022-05-02 08:30:27
...
已知数组a和数组b:
把数组b的结果加入数组a,同cust_no,lotno对应的part_count累加。变成这样的结果:
这样如何做到?需要用哪些数组函数?谢谢!
//数组a:array ( 0 => array ( 'cust_no' => '310F6 1VA5A', 'lotno' => '2X15', 'part_count' => '0', ), 1 => array ( 'cust_no' => '310F6 1VA5A', 'lotno' => '2Z25', 'part_count' => '5', ),)//数组b:array ( 0 => array ( 'cust_no' => '310F6 1VA5A', 'lotno' => '2Z15', 'part_count' => '100', ), 1 => array ( 'cust_no' => '310F6 1VA5A', 'lotno' => '3115', 'part_count' => '28', ),)
把数组b的结果加入数组a,同cust_no,lotno对应的part_count累加。变成这样的结果:
array ( 0 => array ( 'cust_no' => '310F6 1VA5A', 'lotno' => '2X15', 'part_count' => '0', ), 1 => array ( 'cust_no' => '310F6 1VA5A', 'lotno' => '2Z15', 'part_count' => '105', ), 2 => array ( 'cust_no' => '310F6 1VA5A', 'lotno' => '3115', 'part_count' => '28', ),)
这样如何做到?需要用哪些数组函数?谢谢!
回复讨论(解决方案)
$t=array();foreach(array_merge($a,$b) as $v){ if(!isset($t[$v['cust_no'].'_'.$v['lotno']])){ $t[$v['cust_no'].'_'.$v['lotno']]=$v; }else{ $t[$v['cust_no'].'_'.$v['lotno']]['part_count']+=$v['part_count']; } } print_r(array_values($t));
$v['cust_no'].'_'.$v['lotno']这句是什么意思?
将 cust_no 和 lotno的值组成键判断重复用的
将 cust_no 和 lotno的值组成键判断重复用的
哦,原来可以这样用啊。谢谢了!
推荐阅读
-
NET 在一个数组中查找另一个数组所在起始位置(下标从0开始,未找到返回-1)
-
php array_pop()数组函数将数组最后一个单元弹出(出栈)
-
Vue监听一个数组id是否与另一个数组id相同的方法
-
pandas将numpy数组写入到csv的实例
-
将一维或多维的数组连接成一个字符串的php代码
-
将数组写入txt文件 var_export
-
php下将多个数组合并成一个数组的方法与实例代码
-
php使用array_chunk函数将一个数组分割成多个数组
-
编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。
-
5位评委对参赛选手进行打分,将所有的打分结果存储到对应类型的数组中, 将所有的评分结果去除一个最低分,去除一个最高分,然后获取的平均分数为 选手的最终得分.设计程序,用键盘输入5位评委的评分,并打印输