I am trying to group row data from a 3-dimensional array by a column value and sum subarray data in each respective group.
[
[
'name' => 'Edward Foo',
'desc_topic' => ['Apple', 'Banana', 'Orange'],
'qtd_posts' => [10, 20, 50 ],
],
[
'name' => 'Michael Max',
'desc_topic' => ['Apple', 'Banana', 'Orange'],
'qtd_posts' => [10, 10, 10 ],
],
[
'name' => 'Edward Foo',
'desc_topic' => ['Apple', 'Banana', 'Orange'],
'qtd_posts' => [5, 10, 30 ],
],
[
'name' => 'Michael Max',
'desc_topic' => ['Apple', 'Banana', 'Orange'],
'qtd_posts' => [8, 8, 20 ],
],
]
Desired output:
[
[
'name' => 'Edward Foo',
'desc_topic' => ['Apple', 'Banana', 'Orange'],
'qtd_posts' => [15, 30, 80 ],
],
[
'name' => 'Michael Max',
'desc_topic' => ['Apple', 'Banana', 'Orange'],
'qtd_posts' => [18, 18, 30 ],
],
]
I’m assuming the following:
desc_topicsub-array (e.g. they all have the same Apple/Banana/Orange values for every instance.qtd_postssub-array has the to-be-grouped values in the same corresponding slots (e.g. all ‘1’ entries are to be summed together, all ‘2’ entries summed together, etc…)If that applies, then something like this should work: