• 技术文章 >后端开发 >PHP问题

    php range 不重复随机数怎么实现

    藏色散人藏色散人2022-10-26 09:22:45原创174

    php range实现不重复随机数的方法:1、“$result = array_slice($numbers,0,$num);”方法;2、“while (list(, $number) = each ($numbers)) {...}”方法;3、“array_slice($rand_array,0,$limit);”方法;4、“range(1,30);”方法。

    php入门到就业线上直播课:进入学习

    本教程操作环境:windows7系统、PHP8.1版、Dell G3电脑。

    php range 不重复随机数怎么实现?

    PHP生成不重复随机数的几种方法

    方法一:

    <?php 
    $numbers = range (1,50); 
    //shuffle 将数组顺序随即打乱 
    shuffle ($numbers); 
    //array_slice 取该数组中的某一段 
    $num=6; 
    $result = array_slice($numbers,0,$num); 
    print_r($result); 
    ?>

    方法二:

    <?php 
    $numbers = range (1,20); 
    //播下随机数发生器种子,可有可无,测试后对结果没有影响
    srand ((float)microtime()*1000000); 
    shuffle ($numbers); 
    //跳过list第一个值(保存的是索引)
    while (list(, $number) = each ($numbers)) { 
    echo "$number "; 
    } 
    ?>

    方法三:

    <?php 
    function NoRand($begin=0,$end=20,$limit=5){ 
    $rand_array=range($begin,$end); 
    shuffle($rand_array);//调用现成的数组随机排列函数 
    return array_slice($rand_array,0,$limit);//截取前$limit个 
    } 
    print_r(NoRand()); 
    ?>

    方法四:

    <?php 
    $tmp=array(); 
    while(count($tmp)<5){ 
    $tmp[]=mt_rand(1,20); 
    $tmp=array_unique($tmp); 
    } 
    print_r($tmp);
    ?>

    方法五:

    <?php 
    $tmp = range(1,30);
    print_r(array_rand($tmp,10));
    ?>

    推荐学习:《PHP视频教程

    以上就是php range 不重复随机数怎么实现的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

    前端(VUE)零基础到就业课程:点击学习

    清晰的学习路线+老师随时辅导答疑

    自己动手写 PHP MVC 框架:点击学习

    快速了解MVC架构、了解框架底层运行原理

    专题推荐:range php
    上一篇:php 怎么去除utf8的符号 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • ❤️‍🔥共22门课程,总价3725元,会员免费学• ❤️‍🔥接口自动化测试不想写代码?• PHP中利用rand()函数产生一个随机数• php中产生随机数的两种方式• PHP如何使用加密伪随机数生成器• php怎么生成100个不同的随机数
    1/1

    PHP中文网