3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = [ '500 - 1112', ' 1113 - 2224', '2225 - 4446 ', '4446' ]; var_export( array_reduce( $array, function ($result, $v) { if (sscanf($v, '%d - %d', $ints[], $ints[]) === 2) { $result[0] ??= []; array_push($result[0], ...$ints); } else { $result[1] = $ints[0]; } return $result; }, [] ) );

preferences:
30.53 ms | 407 KiB | 5 Q