基本上我創建了一個SQL查詢來在數據庫$i
(目前只是爲了弄清楚)插入大約5000個隨機數。這個PHP While循環腳本有什麼問題
我以前試過只用MYSQL做,但失敗了,不想再浪費時間了。
它隨機產生一個10位數字並交叉檢查數字與數組($codes
),其中包含來自數據庫中不同表格的超過100,000個值。它還將新的隨機數添加到新數組($newNumbers
),因此它不會創建相同的新數字,然後將數字添加到INSERT查詢中。它也有一個嵌套的while
循環來創建第二個數字,它也必須是完全唯一的。
希望是有道理的。 無論如何,這個問題似乎是嵌套而似乎無限循環(而不是增加$i
),但我不能解決原因。
$query = "INSERT INTO 'table' ('num_id', `num1`, `num2`) VALUES";
$i = 0;
while ($i <= 10){
$rand = mt_rand(1000000000, 9999999999);
if (!in_array($rand, $codes) && !in_array($rand2, $newNumbers)){
$newNumbers[] = $rand;
$second = 0;
while ($second == 0){
$rand2 = mt_rand(1000000000, 9999999999);
if (!in_array($rand2, $codes) && !in_array($rand2, $newNumbers)){
$query .= " ('', $rand, $rand2)";
$newNumbers[] = $rand2;
$second = 1;
$i++;
}else
$duplicates ++;
}//end second loop
}else
$duplicates ++;
}//while
檢查這一行:'$查詢= 「( '',$蘭特,$ RAND 2」) 「;'這裏解析錯誤,你有3×'」':) –
謝謝,我稍微簡化了查詢的發佈,我檢查了一下,並且在實際上是正確的。 :) – stuckinspace
使用具有語法高亮度的編輯器NetBeans是一個很好的免費選擇。 –