PHP实现数组根据某个字段进行水平合并,横向合并案例分析


Posted in PHP onOctober 08, 2019

本文实例讲述了PHP实现数组根据某个字段进行水平合并,横向合并。分享给大家供大家参考,具体如下:

PHP数组水平合并,横向合并,两条数据合并成一行

需求

将两个素组中日期相同的合并成一行

数组a

Array
(
  [0] => Array
    (
      [date] => 2019-04-02
      [today_pay_money] => 168.00
      [today_pay_num] => 1
      [yesterday_pay_money] => 999.00
      [yesterday_pay_num] => 1
    )
  [1] => Array
    (
      [date] => 2019-04-09
      [today_pay_money] => 0.01
      [today_pay_num] => 1
      [yesterday_pay_money] => 0.00
      [yesterday_pay_num] => 0
    )
  [2] => Array
    (
      [date] => 2019-05-05
      [today_pay_money] => 0.01
      [today_pay_num] => 1
      [yesterday_pay_money] => 2.00
      [yesterday_pay_num] => 1
    )
  [3] => Array
    (
      [date] => 2019-05-11
      [today_pay_money] => 0.00
      [today_pay_num] => 0
      [yesterday_pay_money] =>
      [yesterday_pay_num] => 1
    )
)

数组B

Array
(
  [0] => Array
    (
      [date] => 2019-05-07
      [today_pay_money1] => 0
      [today_pay_num1] => 0
      [yesterday_pay_money1] => 0
      [yesterday_pay_num1] => 0
    )
  [1] => Array
    (
      [date] => 2019-05-11
      [today_pay_money1] => 0
      [today_pay_num1] => 0
      [yesterday_pay_money1] => 1
      [yesterday_pay_num1] => 1
    )
)

需要格式

Array
(
  [2019-04-02] => Array
    (
      [date] => 2019-04-02
      [today_pay_money] => 168.00
      [today_pay_num] => 1
      [yesterday_pay_money] => 999.00
      [yesterday_pay_num] => 1
    )
  [2019-04-09] => Array
    (
      [date] => 2019-04-09
      [today_pay_money] => 0.01
      [today_pay_num] => 1
      [yesterday_pay_money] => 0.00
      [yesterday_pay_num] => 0
    )
  [2019-05-05] => Array
    (
      [date] => 2019-05-05
      [today_pay_money] => 0.01
      [today_pay_num] => 1
      [yesterday_pay_money] => 2.00
      [yesterday_pay_num] => 1
    )
  [2019-05-11] => Array
    (
      [date] => 2019-05-11
      [today_pay_money] => 0.00
      [today_pay_num] => 0
      [yesterday_pay_money] =>
      [yesterday_pay_num] => 1
      [today_pay_money1] => 0
      [today_pay_num1] => 0
      [yesterday_pay_money1] => 1
      [yesterday_pay_num1] => 1
    )
  [2019-05-07] => Array
    (
      [date] => 2019-05-07
      [today_pay_money1] => 0
      [today_pay_num1] => 0
      [yesterday_pay_money1] => 0
      [yesterday_pay_num1] => 0
    )
)

代码实现

先将a,b数组合并,判断当前日期下是否空,空的话直接赋值,不空的话,将已有素组和当前数组合并

$total = array_merge($a,$b));
$res = array();
foreach ($total as $k => $v) {
  if (empty($res[$v['date']]))
  $res[$v['date']] = $v;
  else
  $res[$v['date']]= array_merge($res[$v['date']],$v);
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP与SQL注入攻击[一]
Apr 17 PHP
PHP时间戳使用实例代码
Jun 07 PHP
PHP 事务处理数据实现代码
May 13 PHP
php随机输出名人名言的代码
Oct 07 PHP
php抓取并保存网站图片的实现代码
Oct 28 PHP
PHP简单日历实现方法
Jul 20 PHP
postfixadmin忘记密码后的修改密码方法详解
Jul 20 PHP
浅谈PHP的排列组合(如输入a,b,c 输出他们的全部组合)
Mar 14 PHP
关于laravel 数据库迁移中integer类型是无法指定长度的问题
Oct 09 PHP
PHP设计模式之适配器模式(Adapter)原理与用法详解
Dec 12 PHP
laravel框架select2多选插件初始化默认选中项操作示例
Feb 18 PHP
PHP获取类私有属性的3种方法
Sep 10 PHP
thinkphp5框架前后端分离项目实现分页功能的方法分析
Oct 08 #PHP
PHP7 安装event扩展的实现方法
Oct 08 #PHP
thinkphp5+layui实现的分页样式示例
Oct 08 #PHP
调试php程序的简单步骤
Oct 04 #PHP
用php定义一个数组最简单的方法
Oct 04 #PHP
php输出文字乱码的解决方法
Oct 04 #PHP
PHP 多进程与信号中断实现多任务常驻内存管理实例方法
Oct 04 #PHP
You might like
PHP+MYSQL 出现乱码的解决方法
2008/08/08 PHP
学习php开源项目的源码指南
2014/12/21 PHP
PHP使用PHPExcel实现批量上传到数据库的方法
2017/06/08 PHP
PHPCrawl爬虫库实现抓取酷狗歌单的方法示例
2017/12/21 PHP
laravel 解决强制跳转 https的问题
2019/10/22 PHP
不同浏览器对回车提交表单的处理办法
2010/02/13 Javascript
防止jQuery ajax Load使用缓存的方法小结
2014/02/22 Javascript
ie 7/8不支持trim的属性的解决方案
2014/05/23 Javascript
jQuery中replaceWith()方法用法实例
2014/12/25 Javascript
JavaScript比较两个对象是否相等的方法
2015/02/06 Javascript
javascript实现检验的各种规则
2015/07/31 Javascript
JavaScript中闭包的写法和作用详解
2016/06/29 Javascript
[38:32]DOTA2上海特级锦标赛A组资格赛#2 Secret VS EHOME第二局
2016/02/26 DOTA
Python实现PS滤镜的旋转模糊功能示例
2018/01/20 Python
python学生管理系统代码实现
2020/04/05 Python
Flask框架响应、调度方法和蓝图操作实例分析
2018/07/24 Python
解决python3 pika之连接断开的问题
2018/12/18 Python
Python序列化与反序列化pickle用法实例
2019/11/11 Python
python时间序列数据转为timestamp格式的方法
2020/08/03 Python
Boden英国官网:英国知名原创时装品牌
2018/11/06 全球购物
真正的英国宝藏:Mappin & Webb
2019/05/05 全球购物
在加拿大在线租赁和购买电子游戏:Game Access
2019/09/02 全球购物
Farfetch中文官网:奢侈品牌时尚购物平台
2020/03/15 全球购物
鞋类设计与工艺专业销售求职信
2013/11/01 职场文书
物流管理专业毕业生自荐信
2014/03/04 职场文书
小学生演讲稿大全
2014/04/25 职场文书
家长会演讲稿
2014/04/26 职场文书
触电现场处置方案
2014/05/14 职场文书
导航工程专业自荐信
2014/09/02 职场文书
明确岗位职责
2015/02/14 职场文书
2015年酒店工作总结范文
2015/04/07 职场文书
2015年社区卫生工作总结
2015/04/21 职场文书
教师旷工检讨书
2015/08/15 职场文书
会议承办单位欢迎词
2019/07/09 职场文书
MySQL里面的子查询的基本使用
2021/08/02 MySQL
javascript函数式编程基础
2021/09/15 Javascript