PHP CSPRNG 伪随机数发生器
CSPRNG(Cryptographically Secure Pseudo-Random Number Generator,伪随机数产生器 )
PHP 7 通过引入几个 CSPRNG 函数提供一种简单的机制来生成密码学上强壮的随机数
函数 | 描述 |
---|---|
random_bytes() | 加密生成被保护的伪随机字符串 |
random_int() | 加密生成被保护的伪随机整数 |
random_bytes()
PHP 7 random_bytes() 函数用于加密生成被保护的伪随机字符串
函数原型
string random_bytes ( int $length )
参数
参数 | 描述 |
---|---|
length | 随机字符串返回的字节数 |
返回值
返回一个字符串,接受一个 int 型入参代表返回结果的字节数
范例
<?php $bytes = random_bytes(5); echo bin2hex($bytes));
运行以上 PHP 范例,输出结果如下
6f36d48a29
random_int()
PHP 7 random_int() 函数用于加密生成被保护的伪随机整数
函数原型
int random_int ( int $min , int $max )
参数
参数 | 描述 |
---|---|
min | 返回的最小值,必须是大于或等于 PHP_INT_MIN |
max | 返回的最大值,必须是小于或等于 PHP_INT_MAX |
返回值
返回一个指定范围内的 int 型数字
范例
<?php echo random_int(100, 999), PHP_EOL; echo random_int(-1000, 0);
运行以上 PHP 脚本,输出结果如下
723 -64