多次使用查询结果

时间:2015-01-21 12:42:37

标签: php mysql

如何多次使用查询结果

$query=...;
$resultsaved=mysql_query($query, $db);
for($i=0;$i<100;$i++){
    $result=$resultsaved;
     while($rowarray = mysql_fetch_array($result, MYSQL_NUM)){
        //do stuff depending on $i and $rowarray
     }
}

然而,在第一次迭代之后,$ resultsaved被销毁;有没有比$ result = mysql_query($ query,$ db)更有效的方法;一百次

1 个答案:

答案 0 :(得分:2)

您不需要临时变量。正如documentationmysql_fetch_array所说:

  

返回与获取的行对应的数组并移动   前面的内部数据指针。

因此,在while循环之后,您需要使用mysql_data_seek重置内部指针:

$query=...;
$result=mysql_query($query, $db);
for($i=0;$i<100;$i++){
     while($rowarray = mysql_fetch_array($result, MYSQL_NUM)){
        //do stuff depending on $i and $rowarray
     }
     mysql_data_seek($result, 0);
}