您的位置 首页 技术专栏

php实现随机的函数有哪些

24小时课堂在线收录php实现随机的函数有哪些,php实现随机的函数有:1、rand(),可生成随机整数;2、mt_rand();3、array_rand(),可返回数组中的一个随机键名;…感谢您关注php实现随机的函数有哪些。

php实现随机的函数有:1、rand(),可生成随机整数;2、mt_rand();3、array_rand(),可返回数组中的一个随机键名;4、shuffle(),可随机打乱数组;5、str_shuffle();6、uniqid()。

本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑

PHP随机函数主要有rand、mt_rand、array_rand,还有随机“排列”(打乱顺序)的函数shuffle、str_shuffle,能够产生唯一ID的uniqid。

1、rand产生随机数

<?php$base = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';$count = strlen($base);$random = '';for ($i=0; $i < 16; $i++) { $random.=$base[rand(0,$count-1)];}echo $random;?>

rand()函数是使用pbc 的随机数发生器生成随机数的,一般较慢,且有不确定因素,建议使用mt_rand函数替代。

getrandmax()函数可以返回rand函数能够产生的最大的随机数(我的系统为32767),所以在设置rand函数第二个参数时不要超高getrandmax的返回值。

2、mt_rand产生随机数

<?php$base = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';$count = strlen($base);$random = '';for ($i=0; $i < 16; $i++) { $random.=$base[mt_rand(0,$count-1)];}echo $random;?>

很多老的 pbc 的随机数发生器具有一些不确定和未知的特性而且很慢。PHP 的 rand() 函数默认使用 pbc 随机数发生器。mt_rand() 函数是非正式用来替换它的。该函数用了 » Mersenne Twister 中已知的特性作为随机数发生器,它可以产生随机数值的平均速度比 pbc 提供的 rand() 快四倍。强烈建议在开发过程中使用mt_rand函数取代rand。

如果没有提供可选参数 min 和 max,mt_rand() 返回 0 到 mt_getrandmax() 之间的伪随机数。例如想要 3到 20(包括 3 和 20)之间的随机数,用 mt_rand(3, 20)。

3、array_rand函数

<?php$base = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','0','1','2','3','4','5','6','7','8','9');$random = '';for ($i=0; $i < 16; $i++) { $random.=$base[array_rand($base)];}echo $random;?>

array_rand返回数组中随机的键值,有点类似mt_rand()函数,其余的没什么特殊的地方,灵活运用而已。

4、shuffle函数

<?php$base = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','0','1','2','3','4','5','6','7','8','9');if(shuffle($base)){ print_r($base);}?>

shuffle函数是打乱一个数组的序列,有点随机的意思,这里就放在随机函数里了。返回值为bool值,相当于直接引用了原变量。

5、str_shuffle函数

<?php$base = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';echo str_shuffle($base);?>

这里str_shuffle的功能和shuffle的功能是类似的,唯一不同的是返回值,str_shuffle的原字符串是不变的。

6、uniqid函数

<?phpecho uniqid();//54f806528172f?>

uniqid能够产生唯一的字符串,这个应用的范围可以相当广泛

以上就是php实现随机的函数有哪些的详细内容,更多请关注24小时课堂在线其它相关文章!

本文来自网络,不代表24小时课堂在线立场,转载请注明出处:https://www.24ketang.cn/96368.html

为您推荐

返回顶部