array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'zh', ), 'this' => array ( 0 => 'function.gmp-random-seed.php', 1 => 'gmp_random_seed', 2 => 'Sets the RNG seed', ), 'up' => array ( 0 => 'ref.gmp.php', 1 => 'GMP 函数', ), 'prev' => array ( 0 => 'function.gmp-random-range.php', 1 => 'gmp_random_range', ), 'next' => array ( 0 => 'function.gmp-root.php', 1 => 'gmp_root', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'en', 'path' => 'reference/gmp/functions/gmp-random-seed.xml', ), 'history' => array ( ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); contributors($setup); ?>

gmp_random_seed

(PHP 7, PHP 8)

gmp_random_seedSets the RNG seed

说明

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

参数

seed

The seed to be set for the gmp_random(), gmp_random_bits(), and gmp_random_range() functions.

GMP 对象、intstring,可以按照跟在 gmp_init() 中使用字符串并自动检测 base(即当 base 等于 0 时)相同的逻辑将其解释为数字。

返回值

没有返回值。

错误/异常

Throws a ValueError if seed is invalid.

更新日志

版本 说明
8.0.0 If seed is invalid, gmp_random_seed() now throws a ValueError. Previously it emitted an E_WARNING and returned false.

示例

示例 #1 gmp_random_seed() example

<?php
// set the seed
gmp_random_seed(100);

var_dump(gmp_strval(gmp_random(1)));

// set the seed to something else
gmp_random_seed(gmp_init(-100));

var_dump(gmp_strval(gmp_random_bits(10)));

// set the seed to something invalid
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)

参见