3v4l.org

run code in 300+ PHP versions simultaneously
<?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; } ) ) );
Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.29, 8.2.0 - 8.2.20, 8.3.0 - 8.3.8
array ( 0 => array ( 'subscribers' => 2, 'unsubscribers' => 1, 'dt_date' => '2014-02-27', ), 1 => array ( 'subscribers' => 2, 'unsubscribers' => 0, 'dt_date' => '2014-02-25', ), 2 => array ( 'subscribers' => 1, 'unsubscribers' => 0, 'dt_date' => '2014-02-07', ), 3 => array ( 'subscribers' => 0, 'unsubscribers' => 1, 'dt_date' => '2014-02-01', ), )

preferences:
118.89 ms | 403 KiB | 126 Q