- var_dump: documentation ( source)
- mt_rand: documentation ( source)
- mt_srand: documentation ( source)
<?php
function my_mt_srand(?int $seed = null) {
$GLOBALS['my_mt_rand'] = new \Random\Randomizer(new \Random\Engine\Mt19937($seed));
}
function my_mt_rand($min = null, $max = null) {
if (!isset($GLOBALS['my_mt_rand'])) {
$GLOBALS['my_mt_rand'] = new \Random\Randomizer(new \Random\Engine\Mt19937());
}
if ($min === null && $max === null) {
return $GLOBALS['my_mt_rand']->nextInt();
}
return $GLOBALS['my_mt_rand']->getInt($min, $max);
}
mt_srand(1234);
my_mt_srand(1234);
var_dump(mt_rand());
var_dump(my_mt_rand());
var_dump(mt_rand(1, 1000));
var_dump(my_mt_rand(1, 1000));