3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array1 = [ [ 'date' => '2012-01-10', 'result' => 65, 'name' => 'Les océans', ], [ 'date' => '2012-01-11', 'result' => 75, 'name' => 'Les mers', ], [ 'date' => '2012-01-13', 'result' => 66, 'name' => 'Les continents', 'type' => 'Scores', ] ]; $array2 = [ [ 'date_end' => '2012-01-12', 'result' => 60, 'name' => 'Step#1', 'type' => 'Summary', ] ]; $result = array_merge($array1, $array2); usort($result, fn($a, $b) => ($a['date'] ?? $a['date_end']) <=> ($b['date'] ?? $b['date_end'])); var_export($result);
Output for 8.1.0 - 8.1.28, 8.2.0 - 8.2.19, 8.3.0 - 8.3.7
array ( 0 => array ( 'date' => '2012-01-10', 'result' => 65, 'name' => 'Les océans', ), 1 => array ( 'date' => '2012-01-11', 'result' => 75, 'name' => 'Les mers', ), 2 => array ( 'date_end' => '2012-01-12', 'result' => 60, 'name' => 'Step#1', 'type' => 'Summary', ), 3 => array ( 'date' => '2012-01-13', 'result' => 66, 'name' => 'Les continents', 'type' => 'Scores', ), )

preferences:
52.91 ms | 403 KiB | 62 Q