验证用户输入的范围数量,以 php 格式生成随机数


Validating Range quantity from user input for generating random numbers in php

我有一个函数,允许我的客户在我的网站上生成随机数。

这是 PHP 函数

function UniqueRandomNumbers($min, $max, $quantity)
{
    $numbers = range($min, $max);
    shuffle($numbers);
    return array_slice($numbers, 0, $quantity);
}

我允许10000 numbers使用FromTo输入提交表格时的最大quantity

我想验证用户提交的范围是否超过 10000 个数字,那么验证应该会抛出错误。例如,如果客户端在From input中使用 10000,在To input中使用 30000,那么它应该抛出错误而不是处理请求。

我尝试了几种东西,但没有幸运地通过。

如何验证 10000 个数字的最大范围?

提前谢谢。

if(($max - $min) > 10000) {
    return false;
}

你的意思是这样的?

function UniqueRandomNumbers($min, $max, $quantity)
{
    if($max > 10000 || $min > 10000){
       return -1;
    }
    $numbers = range($min, $max);
    shuffle($numbers);
    return array_slice($numbers, 0, $quantity);
}

怎么样:

function UniqueRandomNumbers($min, $max, $quantity)
{
    if (($max - $min) > $quantity) {
       throw new Exception('Your range is exceeding your quantity.');
    }
    $numbers = range($min, $max);
    shuffle($numbers);
    return array_slice($numbers, 0, $quantity);
}

还是我理解错了你的问题?