PHP Conference Japan 2024

gmp_random_seed

(PHP 7, PHP 8)

gmp_random_seed设置 RNG 种子

描述

gmp_random_seed(GMP|int|string $seed): void

参数

seed

要为 gmp_random()gmp_random_bits()gmp_random_range() 函数设置的种子。

一个 GMP 对象,一个 int,或一个 string,它可以解释为一个数字,遵循与在 gmp_init() 中使用字符串进行自动基数检测(即当 base 等于 0 时)相同的逻辑。

返回值

不返回任何值。

错误/异常

如果 seed 无效,则抛出 ValueError

变更日志

版本 描述
8.0.0 如果 seed 无效,gmp_random_seed() 现在会抛出 ValueError。以前它会发出 E_WARNING 并返回 false

示例

示例 #1 gmp_random_seed() 示例

<?php
// 设置种子
gmp_random_seed(100);

var_dump(gmp_strval(gmp_random(1)));

// 将种子设置为其他值
gmp_random_seed(gmp_init(-100));

var_dump(gmp_strval(gmp_random_bits(10)));

// 将种子设置为无效值
var_dump(gmp_random_seed('not a number'));

以上示例将输出

string(20) "15370156633245019617"
string(3) "683"

Warning: gmp_random_seed(): Unable to convert variable to GMP - string is not an integer in %s on line %d
bool(false)

参见

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top