我需要使用数字创建唯一的随机引脚。我需要生产10,000,000到99,999,999之间。我需要创造10万针从10000000到99999999生成唯一的随机数
这里是我目前使用的代码:
function UniqueRandomNumbersWithinRange($min, $max, $quantity) {
$numbers = range($min, $max);
shuffle($numbers);
return array_slice($numbers, 0, $quantity);
}
print_r(UniqueRandomNumbersWithinRange(10000000,99999999,100000));
该代码使用50000而不是100000个物品仍然运行还好我的服务器。你能帮助我吗?是否有代码可以产生这么多独特的数字,而不会在服务器中使用太多内存?
您可以先生成随机数字的数量,然后在0-9之间随机化一个数字,次数为 – 2014-10-01 09:24:06
摆脱“ $ numbers = range($ min,$ max);'开始。测试每个兰特是否已经在结果数组中,直到达到您的数量为止 – 2014-10-01 09:27:12
http://www.php.net/mt_rand – GordonM 2014-10-01 09:27:59