<?php
$array1 = [
['subscribers' => 2, 'dt_date' => '2014-02-27'],
['subscribers' => 2, 'dt_date' => '2014-02-25'],
['subscribers' => 1, 'dt_date' => '2014-02-07']
];
$array2 = [
['unsubscribers' => 1, 'dt_date' => '2014-02-27'],
['unsubscribers' => 1, 'dt_date' => '2014-02-01']
];
$default = array_fill_keys(['subscribers', 'unsubscribers'], 0);
var_export(
array_values(
array_reduce(
array_merge($array1, $array2),
function($result, $row) use($default) {
$result[$row['dt_date']] = array_merge($result[$row['dt_date']] ?? $default, $row);
return $result;
}
)
)
);
preferences:
51.48 ms | 404 KiB | 5 Q