mt_srand
(PHP 4, PHP 5, PHP 7, PHP 8)
mt_srand — Seeds the Mersenne Twister Random Number Generator
Description
$seed = 0, int $mode = MT_RAND_MT19937): void
Seeds the random number generator with
seed or with a random value
if no seed is given.
Note: There is no need to seed the random number generator with srand() or mt_srand() as this is done automatically.
Parameters
-
seed -
An arbitrary int seed value.
-
mode -
Use one of the following constants to specify the implementation of the algorithm to use.
Constant Description MT_RAND_MT19937Uses the fixed, correct, Mersenne Twister implementation, available as of PHP 7.1.0. MT_RAND_PHPUses an incorrect Mersenne Twister implementation which was used as the default up till PHP 7.1.0. This mode is available for backward compatibility.
Return Values
No value is returned.
Changelog
| Version | Description |
|---|---|
| 7.1.0 | srand() has been made an alias of mt_srand(). |
| 7.1.0 |
mt_rand() has been updated to use the fixed, correct, version of
the Mersenne Twister algorithm. To fall back to the old behaviour, use mt_srand() with MT_RAND_PHP as the second parameter.
|
Examples
Example #1 mt_srand() example
<?php
// seed with microseconds
function make_seed()
{
list($usec, $sec) = explode(' ', microtime());
return $sec + $usec * 1000000;
}
mt_srand(make_seed());
$randval = mt_rand();
?>
See Also
- mt_rand() - Generate a random value via the Mersenne Twister Random Number Generator
- mt_getrandmax() - Show largest possible random value
- srand() - Seed the random number generator

