码迷,mamicode.com
首页 > Web开发 > 详细

php封装生成随机数函数

时间:2019-01-07 21:05:10      阅读:231      评论:0      收藏:0      [点我收藏+]

标签:code   转换   数字   取消   重复   作用   好处   number   UNC   

随机数函数Random(num,min,max);

num:生成的个数

min:最小的数

max:最大的数。

 <?php
//生成随机20个1-80内不重复的随机数
//思路:也没什么思路,就是单纯的生成20个不重复的数字。
//如果有重复,那就在调用一遍生成函数哈哈哈
//这样子的好处是,纯天然无污染,出来的数据不会有二次生成的感觉。
//问我为什么这样说?你把第33行的注释取消掉就知道了。。。
//感觉自己好蠢啊,花了3小时钻研这个。。。
//生成的随机数已经转换成全局变量了,直接echo $Genrandom就行
$number = array();
function Generate(){
    for($i=0;$i<20;$i++){
        $ran=rand(1,80);
        $number[$i] = $ran;
        $number=array_filter(array_unique($number));
    }
    $unnum=20-count($number);
    if($unnum > 0){
    Check($number);
    }else{
     sort($number);
     echo "生成成功:";
         for($k=0;$k<20;$k++){
            echo $number[$k].",";
        }
        $GLOBALS[‘GenRandom‘] = $number;
    }
}
function Check($number1){
    $unnum1=20-count($number1);
    if($unnum1 > 0){
    //echo "还少".$unnum1."个数"."重新生成中!";
    Generate();
    }
}
Generate();
?>

现在代码就是这样了,怎样才能封装好这个Random函数呢,据说PHP的闭包逻辑很乱,变量作用域问题搞不懂,我都不知道该如何设置返回值。。。

希望能有人能够指点我一下,封装一个函数,具体的步骤思路是什么。

php封装生成随机数函数

标签:code   转换   数字   取消   重复   作用   好处   number   UNC   

原文地址:https://www.cnblogs.com/Opyan/p/10234581.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!