除非var = 0,否则如何从1000到1000获得结果

时间:2013-03-12 17:44:18

标签: php algorithm

我有一个查询,其中num_rows返回一百万条记录。我需要通过1000次迭代这一百万条记录,我的意思是从0到100万开始,每1000个生成一个输出(Excel文件):

Excel1: will contain records 1~1000
Excel2: will contain records 1001~2000
Excel3: will contain records 2001~3000
Excel14: will contain records 3001~4000

依此类推,直到达到一百万。我认为在使用中while()但我根本不安全,有什么帮助吗?

1 个答案:

答案 0 :(得分:1)

假设您正在查询数据库,这样的事情应该有效:

$start = 0;
$end = 1000;

$qstring= 'SELECT col1, col2 FROM mytable ORDER BY col1 LIMIT ?, ?';
$stmt = mysqli_prepare($connection, $qstring);
$stmt->bind_param('ii', $start, $end);
do{
 $stmt->execute();
 $stmt->bind_result($co11, $col2);
 while($stmt->fetch()){
   //do something with $col1, $col2
 }

 $count = $stmt->num_rows
 $start = $end + 1;
 $end = $start +1000;

} while($count == 1000);