php随机脚本运行缓慢
这似乎是问题
<?php
function sortear($prevItems, $number) {
for ($k=0; $k<sizeof($prevItems); $k++) {
if ($prevItems[$k] == $number)
return true;
}
return false;
}
for ($i=0; $i<=9; $i++) {
$num[$i] = rand($_GET['inicial'],$_GET['final']);
while (sortear($prevItems, $num[$i])) {
$num[$i] = rand($_GET['inicial'],$_GET['final']);
}
$prevItems[$i] = $num[$i];
}
sort($num);
?>
对此随机的任何消化? 其余代码在这里
答案 0 :(得分:0)
你有一个无限循环; oldGeom
循环永远不会终止,因为你永远不会增加while
数组的大小。
试试这个:
$prevItems
当然,我不知道你究竟想要完成什么。我所知道的是你的脚本被破坏了,因为while循环只是继续前进......
如果您只是想创建一个包含 start 编号和 end 编号之间所有值的随机数组,请执行以下操作:
function sortear($prevItems, $number) {
for ($k=0; $k<sizeof($prevItems); $k++) {
if ($prevItems[$k] == $number) {
return true;
}
}
return false;
}
for ($i=0; $i<=9; $i++) {
$num[$i] = rand($_GET['inicial'],$_GET['final']);
while (sortear($prevItems, $num[$i])) {
$num[$i] = rand($_GET['inicial'],$_GET['final']);
$prevItems[$i] = $num[$i];
}
}
sort($num);