(PHP 7, PHP 8)
gmp_random_seed — Sets the RNG seed
seedThe seed to be set for the gmp_random_bits() and gmp_random_range() functions.
A GMP object, an int,
or a string that can be interpreted as a number following the same logic
as if the string was used in gmp_init() with automatic
base detection (i.e. when base is equal to 0).
No value is returned.
Throws a ValueError if seed
is invalid.
| Version | Description |
|---|---|
| 8.0.0 |
If seed is invalid, gmp_random_seed()
now throws a ValueError.
Previously it emitted an E_WARNING and returned false.
|
Example #1 gmp_random_seed() example
<?php
// set the seed
gmp_random_seed(100);
var_dump(gmp_strval(gmp_random_bits(10)));
// set the seed to something else
gmp_random_seed(gmp_init(-100));
var_dump(gmp_strval(gmp_random_range(0, 100)));
// set the seed to something invalid
try {
gmp_random_seed('not a number');
} catch (\ValueError $e) {
echo $e->getMessage(), PHP_EOL;
}The above example will output:
string(3) "800" string(2) "32" gmp_random_seed(): Argument #1 ($seed) is not an integer string