重置php指针?

时间:2014-06-18 10:04:17

标签: php mysql pointers reset

我试图执行以下操作:

while ($row = mysql_fetch_assoc($result){
    ...
}
...
while ($row2 = mysql_fetch_assoc($result){
    ...
} 

但它不起作用。第二个循环中的命令永远不会运行。我猜这与mysql函数的指针有关,必须重置。如果是这样,怎么做?

3 个答案:

答案 0 :(得分:4)

使用函数mysql_data_seek

http://www.php.net/manual/en/function.mysql-data-seek.php

虽然你应该考虑升级到不使用mysql_ *函数

答案 1 :(得分:4)

避免使用以mysql_开头的任何函数,不推荐使用它们。使用PDO,您可以按照自己的意愿行事:

$pdo = new PDO(/**/);                // [1]

$stmt = $pdo->prepare(/* query */);  // [2]
$stmt->execute();                    // [3]

$rows = $stmt->fetchAll();           // [4]

foreach($rows as $row)
{
    //
}

foreach($rows as $row2)
{
    //
}

上面引用的行的指南:

答案 2 :(得分:1)

$result2 = $result;
while ($row = mysql_fetch_assoc($result){
    ...
}

...

while ($row2 = mysql_fetch_assoc($result2){
    ...
}