PHP随机数是否可预测?如果是这样,预测在1到32范围内的随机数有多难?有什么办法让它变得不可预测?PHP mt_rand()函数
<?php
function rand_best($min, $max) {
$generated = array();
for ($i = 0; $i < 100; $i++) {
$generated[] = mt_rand($min, $max);
}
shuffle($generated);
$position = mt_rand(0, 99);
return $generated[$position];
}
?>
由于使用'mt_rand()'写的东西,你应该在[梅森倍捻机(HTTP读了起来: //en.wikipedia.org/wiki/Mersenne_twister)算法,如果你想知道它是如何工作的。 – DaveRandom 2012-01-05 11:49:09
此外,'mt_rand()'提供比'rand()'更好的质量(明显有缺陷)。顺便说一句,*不随机*,*不统一*和*可预测*是非常不同的概念:如果您不知道种子,则无法预测下一个数字。 – 2012-01-05 11:53:15