<?php
// First Array
$a = [
[
"sales" => [
["Date" => "2014-04-01", "Units" => 1],
["Date" => "2014-04-02", "Units" => 7]
]
]
];
$b = [
[
"sales" => [
["Date" => "2014-04-01", "Units" => 3],
["Date" => "2014-04-02", "Units" => 2]
]
]
];
$c = [
[
"sales" => [
["Date" => "2014-04-01", "Units" => 0],
["Date" => "2014-04-02", "Units" => 5]
]
]
];
$result = [];
foreach (array_merge($a[0]['sales'], $b[0]['sales'], $c[0]['sales']) as $row) {
if (!isset($ref[$row['Date']])) {
$ref[$row['Date']] = $row;
$result[] =& $ref[$row['Date']];
} else {
$ref[$row['Date']]['Units'] += $row['Units'];
}
}
var_export($result);
preferences:
26.09 ms | 405 KiB | 5 Q