数组重构 根据mid 把所有 属于mid 的投资累加 重构出 新的二维数组

$arr = array( 25 =>array( ‘mid‘ => ‘28838‘, ‘invest_money‘ => ‘1196000‘,  ‘rm_id‘ =>  ‘157733‘,  ),

27 =>array (  ‘mid‘ => ‘28838‘,  ‘invest_money‘ =>‘1180000‘,  ‘rm_id‘ => ‘157733‘,),

28 => array ( ‘mid‘ => ‘28838‘, ‘invest_money‘ => ‘910000‘,   ‘rm_id‘ => ‘157733‘,),

2205 => array(‘mid‘ =>‘20191‘, ‘invest_money‘ => ‘350000‘,   ‘rm_id‘ => ‘157733‘, ),

2207 => array ( ‘mid‘ => ‘20191‘, ‘invest_money‘ =>  ‘550000‘,  ‘rm_id‘ => ‘157733‘,)  );

$arr = array_values($arr);

$new = array();

foreach($arr as $key=>$val) {

if($key == 0) {

$new[$val[‘mid‘]] = $val[‘invest_money‘];

} else {

if(array_key_exists($val[‘mid‘], $new)) {

$new[$val[‘mid‘]] += $val[‘invest_money‘];

} else {

$new[$val[‘mid‘]] = $val[‘invest_money‘];

}

}

}

$new2 = array();

foreach($arr as $key=>$val) {

foreach($new as $k=>$v) {

if($arr[$key][‘mid‘] == $k) {

$new2[$k][‘mid‘] = $k;

$new2[$k][‘invest_money‘] = $v;

$new2[$k][‘rm_id‘] = $val[‘rm_id‘];

}

}

}

array

28838 =>

array

‘mid‘ =>  28838

‘invest_money‘ => 3286000

‘rm_id‘ =>  ‘157733‘

20191 =>

array

‘mid‘ => 20191

‘invest_money‘ => 900000

‘rm_id‘ =>  ‘157733‘

时间: 2024-11-08 20:24:28

数组重构 根据mid 把所有 属于mid 的投资累加 重构出 新的二维数组的相关文章

php数组根据某键值,把相同键值的合并最终生成一个新的二维数组

要处理的PHP数组: $infos = array(         array(         'gid' => 36,         'name' => '高二佳木斯',                  'start_time' => '2015-08-28 00:00:00',                    'pic' => '2015/08/438488a00b3219929282e3652061c2e3.png'                       

php 二维数组 根据条件合并成新的二维数组

$_data = []; $order_id = ''; foreach ($data as $k => $v) { if($order_id != $v['order_id']){ $arr = []; $arr['id'] = $v['id']; $arr['order_number'] = $v['order_number']; $arr['edit_time'] = $v['edit_time']; $arr['order_state'] = $v['order_state']; $ar

Java打印M图形(二维数组)——(九)

对于平面图形输出集合图形与数字组合的,用二维数组.先在Excel表格中分析一下,找到简单的规律.二维数组的行数为行高,列数为最后一个数大小. 对于减小再增大再减小再增大的,可以用一个boolean标志其是增加还是减小状态,减到最小时将其标志设为相反的并改变这时的初值大小. 效果: Excel中分析 Java代码: 1 package Java_Test; 2 3 public class PrintM { 4 5 /* 6 7 3 7 8 2 4 6 8 9 1 5 9 10 平面图形(二维数组

6.javaScript中的二维数组

1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Document</title> 6 <script type="text/javascript"> 7 //声明一维数组 8 var myarr = new Array(); 9 for (var i = 0; i < 3; i++) {

C#一维数组,二维数组,多维数组

所谓的数组,就是相同数据类型的元素的元素按一定顺数排列的集合,就是把有限个类型相同的变量用一名字命名,然后用编号区分他们的变量的集合,这个名字成为数组名,编号称为下标.组成数组的各个变量成为数组的分量,也称为数组的元素,有时也称为下标变量,数组是在程序设计中,为了处理方便,把具有相同类型的若干变量按有序的形式组织起来的一种形式.这些按序排列的同类数据元素的集合成为数组. 数组又分为一维数组,二维数组,多维数组 一维数组用一个整数来索引,多维数组用两个或多个整数来索引. 一.数据类型[] 变量名

C语言笔记(二维数组与数值指针)

一.关于二维数组和二维数组区别 (1)一维数组在内存中是连续分布存储的,同样,二维数组也是在内存连续存储的.所以从内存的角度来分析,一维数组和二维数组其实没有本质区别. (2) 二维数组可以使用一维数组来代替.但是在实际的应用中,有时候使用二维数组会更加直观,方便程序的编程. (3)两者在内存使用效率上是一模一样的. 二.二维数组的第一维和第二维概念 (1)例如 int a[2][5]中,前面的2表示第一维:后面的5表示第二维 (2) 二维数组的第一维表示最外部的那一层,第一维本身也是一个数组,

二维数组的练习----求和

声明一个二维数组: 分别用静态.动态初始化这个数组 求二维数组中的各个值得和 1 package com.baidu.java; 2 //练习1.获取二维数组中所有值得和 3 public class TestArrayLX1 { 4 public static void main(String[] args) { 5 int sum=0; 6 //1.静态声明: 7 //int[][] arr=new int[][]{{0,12,1},{0,2,0,0,2},{0,3}}; 8 //2.动态声

汇编学习:二维数组遍历

作为正式接触汇编的开篇,本文将研究二维数组的遍历问题.在图像处理中,通常需要遍历图像像素(即二维数组).下面给出三个版本的遍历函数,并研究他们的汇编代码(VC2010编译器,x86版,Release模式). (1)在两层循环内每次根据行列索引计算元素位置. (2)为了避免在内存循环内的乘法计算,可在每次外层循环中计算好行起始地址,内层循环每次执行++操作. (3)将外层循环的乘法操作也去掉,在循环外部先计算好数组的起始地址,内层循环每次执行++操作即可. 测试程序实现对图像的反相操作(即B=25

[CareerCup] 13.10 Allocate a 2D Array 分配一个二维数组

13.10 Write a function in C called my2DAlloc which allocates a two-dimensional array. Minimize the number of calls to malloc and make sure that the memory is accessible by the notation arr[i][j]. 这道题让我们写个C语言函数my2DAlloc用来给一个二维数组分配内存,并且让我们尽可能的少调用malloc