警告:不要使用此函数。
改用 gmp_random_bits() 或 gmp_random_range()。
此函数的文档和代码不匹配,并且无论如何这个函数非常无用。
(PHP 4 >= 4.0.4, PHP 5, PHP 7)
gmp_random — 随机数
此函数已在 PHP 7.2.0 中被 弃用,并在 PHP 8.0.0 中被 移除。强烈建议不要依赖此函数。
生成一个随机数。该数字将在 0 和 (2 ** n) - 1 之间,其中 n 是每个肢体的位数乘以 limiter
。如果 limiter
为负数,则生成负数。
肢体是 GMP 的内部机制。肢体中的位数不是固定的,并且在不同的系统上可能会有所不同。通常,肢体中的位数为 32 或 64,但不能保证。
此函数不会生成密码学安全的随机数,并且 不能 用于密码学目的,或需要返回值不可猜测的目的。
如果需要密码学安全的随机数,可以使用 Random\Randomizer 和 Random\Engine\Secure 引擎。对于简单的用例,random_int() 和 random_bytes() 函数提供了便捷且安全的 API,其由操作系统的 CSPRNG 支持。
一个随机的 GMP 数字。
示例 #1 gmp_random() 示例
<?php
$rand1 = gmp_random(1); // 随机数,范围从 0 到 1 * 位数/肢体
$rand2 = gmp_random(2); // 随机数,范围从 0 到 2 * 位数/肢体
echo gmp_strval($rand1) . "\n";
echo gmp_strval($rand2) . "\n";
?>
上面的示例将输出
1915834968 8642564075890328087
警告:不要使用此函数。
改用 gmp_random_bits() 或 gmp_random_range()。
此函数的文档和代码不匹配,并且无论如何这个函数非常无用。