php生成指定范围内多个不重复的随机数

你的心应该保持这种模样,略带发力的紧张,不松懈,对待不定有坦然。损伤是承载,沉默是扩展。终结是新的开始。如此,我会为你的心产生敬意。

利用php脚本可以很方便的生成指定范围内单个随机数,但如果同时生成多个随机数就会出现重复概率。下面的博文就给了一种可以同时在指定范围内生成多个不重复随机数的方法。

php在指定范围内同时生成多个不重复随机数的方法

自定义一个生成的函数

/**
 * # 在指定范围内生成多个不重复的随机数
 * @host http://www.feiniaomy.com
 */
function get_rand($min, $max, $num)
{
    $count = 0;
    $return = array();
    while ($count < $num) {
        $return[] = mt_rand($min, $max);
        $return = array_flip(array_flip($return));
        $count = count($return);
    }  
    shuffle($return);
    return $return;
}

函数调用:

//生成10个1到100范围内的不重复随机数
$arr = get_rand(1, 100, 10);
print_r($arr);

生成结果:

Array
(
    [0] => 90
    [1] => 30
    [2] => 94
    [3] => 64
    [4] => 42
    [5] => 67
    [6] => 57
    [7] => 32
    [8] => 46
    [9] => 39
)

本文php生成指定范围内多个不重复的随机数到此结束。我相信,所有的梦想,都是一个充满责任成功的人生,当你还没有条件去自由的选择,请记住,梦想在我们的下一步,做好每一件小事,做得与众不同,我们就会向梦想走近。小编再次感谢大家对我们的支持!

您可能有感兴趣的文章
PHP性能优化案例分享

PHP实现短信验证码的发送次数限制

PHP中的异常处理机制深入讲解

PHP常见七种算法合集代码实例

PHP微信扫描二维码关注公众号后自动登录第三方网站