我期待根據MySQL數據庫生成一個沒有重複的隨機數。我如何更改以下函數,以便它檢查數據庫,如果生成的數字已經存在,並且如果不存在,則將其插入到表中。另外,如何佈置表格?我不是最好的設計行,使他們儘可能小(和實用)。生成非重複數字,對數據庫保持警惕
功能:
function genNonRepNum($min, $max, $quantity) {
$numbers = range($min, $max);
shuffle($numbers);
return array_slice($numbers, 0, $quantity);
}
使用功能:
print_r(genNonRepNum(1000, 10000, 3));
回報:
Array ([0] => 8586 [1] => 9666 [2] => 8169)
這是真棒,但我只希望它檢查一個數據庫,看看它是否存在,如果沒有,就插入它。提前致謝。
使db索引唯一,那麼現有數字的任何插入都將失敗 –
這可以解決插入它們的問題,但它並不能真正回答我的問題。另外,如果我使用它,我是否必須使用'try'塊來插入它們,如果它失敗了,或者如果我打電話它會好嗎? – Zak
在問題中沒有插入,我不知道你的方法 –