$v) { $x = array_merge ($x, range ($v, (empty($a[2][$k])?$v:$a[2][$k]))); } return ($x); } $test_string = '1-2 18-20 9-11'; print_r(string_range($test_string)); ?>