Сброс указателя массива в результатах PDO

У меня проблемы с переходом от методов mysql SELECT к методам PDO. Я хочу дважды перебрать выбранный массив, оба раза начиная с нулевой строки. В mysql я бы использовал:

mysql_data_seek($result,0);

Используя методы PDO, я не уверен, как добиться того же. В приведенном ниже коде показано, как я пытаюсь это сделать. Первый цикл while работает нормально, но второй цикл while ничего не возвращает. Подскажите, пожалуйста, где я ошибаюсь?

$pdo = new PDO('mysql:host=' . $host . ';dbname='.$database, $username, $password);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$stmt = $pdo->prepare('SELECT * FROM mytable WHERE active = 1 ORDER BY name ASC');
$stmt->setFetchMode(PDO::FETCH_ASSOC);
$stmt->execute();

while($row = $stmt->fetch())
{
    //do something starting with row[0]
}
while($row = $stmt->fetch())
{
    //do something else starting with row[0]
}

Спасибо за вашу помощь.

19
задан user1028866 24 February 2012 в 19:59
поделиться