php PDO fetchAll () - nie działa, foreach działa

Chciałbym wiedzieć, czy robię dobrze OR fetchAll () nie działa z WHILE.

oto przykład

$db=new PDO("mysql:host=" .$dbhost. "; dbname=" . $dbname, $dbuser, $dbpass);

$page=$db->prepare("SELECT * FROM page");
$page->execute();

foreach ($page->fetchAll(PDO::FETCH_ASSOC) as $row) {

//echo a row
//is working
}

jednak jeśli spróbuję zapętlić za chwilę

while ($row=$page->fetchAll(PDO::FETCH_ASSOC)){

//echo a row
//Show empty
}

Próbowałem użyć tylko fetch (), działało, moje pytanie: dlaczego fetchAll () nie działa z „WHILE”?

questionAnswers(5)

yourAnswerToTheQuestion