📅  最后修改于: 2023-12-03 15:33:34.286000             🧑  作者: Mango
random_int()
函数是PHP 7中新增加的函数,其主要用于生成随机整数。在此之前,PHP已经有了mt_rand()
、rand()
等函数,但由于其生成的随机数不是很安全,容易被预测,因此,PHP在7版本中新增了random_int()
函数,以更安全地生成随机数。
random_int(int $min, int $max) : int
$min
:所生成随机整数的最小值。$max
:所生成随机整数的最大值。返回的值为一个随机的整数,其范围在$min
和$max
之间(包括$min
和$max
)。
$random_int = random_int(1, 10);
echo $random_int; // 输出1到10之间的一个整数
由于random_int()
函数的随机数是使用CSPRNG算法生成的,因此,其生成的随机数较为安全,不容易被预测。
在使用random_int()
函数时,需要注意其在各操作系统下的实现不尽相同,可能会影响其安全性。特别是在Windows操作系统下,由于其缺乏getrandom()
或/dev/urandom
这样的API,因此random_int()
函数可能会降级为使用不安全的随机数算法,如rand()
或mt_rand()
。因此,在安全场景下建议使用Linux或Unix系统,或者验证random_int()
函数生成的随机数是否安全。
// 生成8位随机验证码
$min = 10000000;
$max = 99999999;
$code = random_int($min, $max);
echo $code; // 输出一个长度为8位的随机数