php随机数总结

2016-11-25  本文已影响0人  记性总是那么不好

<?php

//基本的产生随机数

functionrandfloat($min=0,$max=1){

return$min+mt_rand()/mt_getrandmax() * ($max-$min);

}

/**

*产生两位小数

* frand函数作用:产生随机小数

*@parammin随机数最小值

*@parammax随机数最大值

*@paramdecimals小数位数

*其中,pow(x, y)函数为幂函数,返回x的y次

*/

functionfrand($min=0,$max=1,$decimals=2) {

$scale=pow(10,$decimals);

returnmt_rand($min*$scale,$max*$scale) /$scale;

}

/**

* step_rand函数作用:产生指定步长的随机数

*@parammin随机数最小值

*@parammax随机数最大值

*@paramstep步长

*/

functionstep_rand($min=0,$max=3,$step=1) {

$scale=1/$step;

returnmt_rand($min*$scale,$max*$scale) /$scale;

}

/**

* frand函数作用:产生随机密码

*@parammin密码最短值

*@parammax密码最长值

*/

functionrand_password($min=0,$max=5) {

$str='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890';

//获得字串长度,避免获取随机数时溢出

$maxStr=strlen($str-1);

//获得密码随机长度

$length=mt_rand($min,$max);

$password=' ';

//循环获得每一位密码

for($i=0;$i<$length;$i++) {

$password.=$str[mt_rand(0,$maxStr)];

}

return$password;

}

for($i=0;$i<1000;$i++) {

$e= rand_password();

echo"hdadad:$e
";

}

/*$d = step_rand();

echo "hahha:$a";

echo "
";

echo "ddd:$b
";

//echo "aaa:$c
";

echo "aba:$d
";*/

上一篇 下一篇

猜你喜欢

热点阅读