初学php写了一个,通过楼上才知道
mt_rand()它可以产生随机数值的平均速度比 libc 提供的 rand() 快四倍
============================================================
思路是一样的 ,用do while 弄得,生成2000个用不了多长时间10秒以里
<?php
//连接数据库略去
$i=1;
do {
$tmprnd=mt_rand(1000, 9999);
$sql="select count(*) as total from test where num='".$tmprnd."'";
$result=mysql_query($sql,$conn);
$ret=mysql_fetch_array($result);
$count=$ret['total'];
if($count==0){
mysql_query("insert into test (num) values ('".$tmprnd."')",$conn);
$i++;
}
}
while($i<2000)
?>
==============================================================
考虑到效率问题,可以先生成2000个不重复随机数,放到数组里,每次检测生成的在不在数组里,直到生成2000个
然后统一把2000条插入数据库。
[ 本帖最后由 EpsiLonLink 于 2008-9-2 11:35 编辑 ]