3v4l.org

run code in 300+ PHP versions simultaneously
<?php function getRandomTo($num){ $arr = array(); do { $arr[] = rand(1, $num - array_sum($arr)); } while (array_sum($arr) < $num); return $arr; } print_r(getRandomTo(12));

preferences:
32.78 ms | 402 KiB | 5 Q