I would like to generate a given number of random numbers with given constraints. Here, I would like the difference between every other element to be at least (say) 3 and the (generated) number to fall within a given range.
I have found a function to generate a given number of random numbers in a given range (Generating UNIQUE Random Numbers within a range):
function UniqueRandomNumbersWithinRange($min, $max, $quantity) {
$numbers = range($min, $max);
shuffle($numbers);
return array_slice($numbers, 0, $quantity);
}
print_r( UniqueRandomNumbersWithinRange(0,25,5) );
which gives:
Array
(
[0] => 20
[1] => 23
[2] => 7
[3] => 18
[4] => 17
)
and does not meet the requirements. Instead
Array
(
[0] => 20
[1] => 24
[2] => 2
[3] => 12
[4] => 8
)
would work.
Is there a simple way to do that in PHP ?
Best,