最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
PHP实现数组根据某个字段进行水平合并横向合并代码实例
时间:2022-06-24 22:32:39 编辑:袖梨 来源:一聚教程网
本篇文章小编给大家分享一下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);
}
相关文章
- 崩坏星穹铁道真理医生的留言便条全收集攻略 11-21
- 如龙8春日员工服装获取地址分享 11-21
- 崩坏星穹铁道十全点心食谱摘录获取位置分享 11-21
- 雾锁王国联机网络优化教程 联机断联怎么办 11-21
- 崩坏星穹铁道界种科的植物培育计划表获取地点 11-21
- 七日世界黑原陷落箱子位置一览 11-21