如何将2个数组合并为一个数组?

波斯菊

我有2个数组,正如您将在下面看到的,我希望将主题组合成一个数组。前两个数组具有子数组,它们的总和为一个月。结果array(3rd)必须具有同一月份的前2个数组的总和。

array:3 [
  0 => array:2 [
    "sum" => 179.0
    "month" => "2016-01"
  ]
  1 => array:2 [
    "sum" => 34.0
    "month" => "2016-02"
  ]
  2 => array:2 [
    "sum" => 67.0
    "month" => "2016-03"
  ]
]


array:2 [
  0 => array:2 [
    "sum" => 143.25
    "month" => "2016-01"
  ]
  1 => array:2 [
    "sum" => 479.0
    "month" => "2016-03"
  ]
]


Total:

array:3 [
  0 => array:3 [
    "sum" => 313.25
    "month" => "2016-01"
  ]
  1 => array:2 [
    "sum" => 34.0
    "month" => "2016-02"
  ]
  2 => array:2 [
    "sum" => 546.0
    "month" => "2016-03"
  ]
]

我试过的

for($i=0;$i<count($com1);$i++){
            for ($j=0; $j < count($com2); $j++) { 
                if($com1[$i]['month'] == $com2[$j]['month']){
                    $total = $com1[$i]['sum']+$com2[$j]['sum']
                }
            }
        }

但这并没有给我想要的结果

我有点菜鸟...希望有人能提供帮助。谢谢

布雷维斯

尝试这个:

$com1 = [
  0 => [
    'sum' => 179.0,
    'month' => '2016-01'
  ],
  1 => [
    'sum' => 34.0,
    'month' => '2016-02'
  ],
  2 => [
    'sum' => 67.0,
    'month' => '2016-03'
  ]
];

$com2 = [
  0 => [
    'sum' => 143.25,
    'month' => '2016-01'
  ],
  1 => [
    'sum' => 479.0,
    'month' => '2016-03'
  ]
];

$total = [];
foreach ($com1 as $data) {
    $total[$data['month']] = $data;
}

foreach ($com2 as $data) {
    if (!isset($total[$data['month']])) {
        $total[$data['month']] = [
            'sum' => 0,
            'month' => $data['month']
        ];
    }
    $total[$data['month']]['sum'] += $data['sum'];
}

print_r($total);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将2个数组合并为一个关联数组

来自分类Dev

如何将两个数组合并为一个数组?

来自分类Dev

如何将两个数组合并为一个嵌套数组?

来自分类Dev

如何将3个数组合并为具有相同索引的一个数组-JavaScript

来自分类Dev

将2个数组合并为一个数组Javascript

来自分类Dev

将数组合并为一个数组

来自分类Dev

如何将两个数组合并为一个对象

来自分类Dev

如何将 3 或 4 个数组合并为一个

来自分类Dev

如何将两个数组合并为一个 php

来自分类Dev

将N个数组合并为一个?

来自分类Dev

如何将两个数组的负数合并为一个数组?

来自分类Dev

将两个数组合并为一个2D数组-PHP

来自分类Dev

如何将一个数组的数组合并到一个数组中?

来自分类Dev

C#将多个数组合并为一个数组

来自分类Dev

将一个数组合并为几个数组

来自分类Dev

将两个数组合并为一个数组列表

来自分类Dev

python:将两个数组合并为一个数组

来自分类Dev

如何使用.map和.filter将两个数组合并为一个

来自分类Dev

按顺序将两个int数组合并为一个数组

来自分类Dev

php - 如何将最后两个数组元素合并为一个数组元素

来自分类Dev

如何将两个数组缓冲区合并为一个?

来自分类Dev

如何将两个数组列表按升序合并为一个

来自分类Dev

如何将两个数组缓冲区合并为一个?

来自分类Dev

如何根据键匹配值将两个对象数组合并为一个数组

来自分类Dev

如何通过公共值将2个数组值合并为一个

来自分类Dev

PHP将JSON数组合并为一个数组

来自分类Dev

将多个http.requests中的数组合并为一个数组

来自分类Dev

将两个数组合并为一个结果数组

来自分类Dev

将多维数组合并为一个数组

Related 相关文章

热门标签

归档