使用循環向數據庫中插入數據:
createBigData.php
<?php
/*
//隨機獲取姓名字符串
function getName() {
$name = '';
$singleWord = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
$singleWords = 'abcdefghijklmnopqrstuvwxyz';
$length = strlen($singleWord);
for ($i = 0; $i < rand(3, $length); $i++) {
if ($i == 0) {
$name .= substr($singleWord, rand(1, $length)-1, 1);
}else {
$name .= substr($singleWords, rand(1, $length)-1, 1);
}//end if()
}//end for
return $name;
}//end func getName
?>
插入數據之後的查詢結果:
與第一條name重復的記錄:
本來要的十萬條數據都有了,但是通過查詢發現這樣一個規律:name字段每隔1760條記錄就會重復,而且不止name重復,sex、age也會一模一樣,不知道是怎麼回事,求各位大神解惑!
隨機數的產生與以下三個方面有關:
(1) 隨機數算法,這個調用系統的隨機函數沒有辦法修改
(2) 隨機的種子 ,好像是有個 srand 的函數在 C 語言等環境下可用,但 php 偶沒有用過、不太清楚
(3) 隨機的范圍,可以考慮將隨機數的范圍設置的大一些,然後通過取模來限制在一定的范圍之內
後面兩項,都是需要程序代碼來處理,以增加隨機數的隨機性。