php 合并一个二维数组相同项,数量则相加

 $arr = array(
     array(
        'user_id' => 100,
        'goods_id' => 10,
        'number' => 1,
     ),
     array(
        'user_id' => 100,
        'goods_id' => 10,
        'number' => 2,
     ),
     array(
        'user_id' => 100,
        'goods_id' => 10,
        'number' => 2,
     ),
     array(
        'user_id' => 100,
        'goods_id' => 10,
        'number' => 2,
     ),
 );
 理想结果:
 $arr = array(
     array(
         'user_id'=> 100,
         'goods_id' => 10,
         'number' => 7,
     ),

 );

 foreach($arr as $k=>$v){
     if(!isset($item[$v['user_id']])){
         $item[$v['user_id']]=$v;
     }else{
         $item[$v['user_id']]['number']+=$v['number'];
     }
 }
 print_r($item);

php键值相同的项数值相加的更多相关文章

  1. zabbix添加监控项以及常用的键值

      zabbix自身提供了丰富的监控项,下面以“cpu空闲值”为例介绍zabbix如何添加新的监控项 1.创建主机群组 配置——主机群组——创建主机群组 2.创建主机 配置——主机——创建主机 3.添 ...

  2. (转载)php 合并数组中的数据,如果键值相等其值相加

    (转载)http://hi.baidu.com/syxrrrr/item/7dfb2387343ce0874414cfdd /* * 合并数据,如果键值相等其值相加 * @param array $d ...

  3. php多个数组同键名键值相加合并

    //任意多个相同键值的数组合并相加 //预先将所要合并的数组组装成一个新的数组 // $arr = array( // array( // 'user_id' => 100, // 'goods ...

  4. PHP 二维数组去重(保留各个键值的同时去除重复的项)

    对于如下二维数组,要求对其进行去重: $arr = array( '=>array( 'name'=>'james', , ), '=>array( 'name'=>'susu ...

  5. 11 Servlet_03 关键字总结 资源跳转:重定项 键值对 继承类 do-get do-post Request域 Context域 =空针解决方法

    知识点总结: 1.java里的关键字: byte short int long  数据类型 (正整数)char  数据类型(单字符型)boolesn ture false  布尔类型float dou ...

  6. c#字典怎么获取第一个键值 List<对象>获取重复项,转成Dictionary<key,List<对象>>

    c#字典怎么获取第一个键值 Dictionary<string, int> dictionary = new Dictionary<string, int>(); dictio ...

  7. KVO - 键值观察

    [基本概念] 键值观察是一种使对象获取其他对象的特定属性变化的通知机制.控制器层的绑定技术就是严重依赖键值观察获得模型层和控制器层的变化通知的.对于不依赖控制器层类的应用程序,键值观察提供了一种简化的 ...

  8. 【原】Learning Spark (Python版) 学习笔记(二)----键值对、数据读取与保存、共享特性

    本来应该上周更新的,结果碰上五一,懒癌发作,就推迟了 = =.以后还是要按时完成任务.废话不多说,第四章-第六章主要讲了三个内容:键值对.数据读取与保存与Spark的两个共享特性(累加器和广播变量). ...

  9. Spark之键值RDD转换(转载)

    1.mapValus(fun):对[K,V]型数据中的V值map操作(例1):对每个的的年龄加2 object MapValues { def main(args: Array[String]) { ...

随机推荐

  1. 解决mysql 服务无法启动问题:Can't find messagefile 'D:\ ools\mysql-5.6.25-winx64\share\errmsg.sys'

    右击我的电脑-->管理,查看Window日志里的应用程序,发现报错. 仔细检查一下my.ini的配置,确保路径正确,楼主的目录如下: 关键的一步,查看my.default文件,加入这样一句:sq ...

  2. TCP三次握手(建立连接)/四次挥手(关闭连接)

    TCP数据包格式 顺序号(32位):用来标识从TCP源端向TCP目的端发送的数据字节流,它表示在这个报文段中的第一个数据字节的顺序号.如果将字节流看作在两个应用程序间的单向流动,则TCP用顺序号对每个 ...

  3. SpringData系列四 @Query注解及@Modifying注解

    @Query注解查询适用于所查询的数据无法通过关键字查询得到结果的查询.这种查询可以摆脱像关键字查询那样的约束,将查询直接在相应的接口方法中声明,结构更为清晰,这是Spring Data的特有实现. ...

  4. linux系统管理--查看进程

    关于进程的查看,大家都不会陌生 ,主要是ps和pstree命令. ps  aux    查看系统中所有进程,使用BSD操作系统格式.(注意:不是ps -aux) 执行结果 USER :该进程是由哪个用 ...

  5. 【Python 函数对象 命名空间与作用域 闭包函数 装饰器 迭代器 内置函数】

    一.函数对象 函数(Function)作为程序语言中不可或缺的一部分,但函数作为第一类对象(First-Class Object)却是 Python 函数的一大特性. 那到底什么是第一类对象(Firs ...

  6. 《JAVA与模式》之命令模式

    在阎宏博士的<JAVA与模式>一书中开头是这样描述命令(Command)模式的: 命令模式属于对象的行为模式.命令模式又称为行动(Action)模式或交易(Transaction)模式. ...

  7. css样式自动换行/强制换行

    写样式时遇到的英文字符超出容器问题,度娘后了解下列知识,与大家分享,同时以便自己日后回顾. 一.自动换行问题 正常字符的换行是比较合理的,而连续的数字和英文字符常常将容器撑大. 下面介绍的是CSS如何 ...

  8. 一天搞定CSS: 浮动(float)与inline-block的区别--11

    浮动: 使元素脱离文档流,按照指定的方向发生移动,遇到父级的边界或者相邻的浮动元素就会停下来. inline-block: inline-block是指行内块元素,它具有行内元素和块元素两者的特点,可 ...

  9. 第45篇 js操作打开本地程序

    原文地址:http://blog.laofu.online/2017/06/10/how-js-controlApp/ 背景 假设有这样一个产品,一个web和一个winform客户端,在客户在web的 ...

  10. wdcp php5.3添加pdo_mysql模块

    先查看探针: pdo没有支持mysql.导致了PHpwind以及thinkphp框架的一些运用了pdo进行mysql操作的程序无法运行. php5.3默认是封装了pdo_mysq的.那么就没必要单独下 ...