我有一个查询,其中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()
但我根本不安全,有什么帮助吗?
答案 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);