0
新來OOP和只是想知道,爲什麼這會導致一個無限循環:爲什麼這個while循環中的表達式導致無限循環?
while ($row=$dbh->query("SELECT * FROM animal")->fetch(PDO::FETCH_ASSOC)){
printf("A(n) %s is a type of %s<br />", $row['name'], $row['species']);
}
然而,這並不導致無限while循環
$sth=$dbh->query("SELECT * FROM animal");
while ($row=$sth->fetch(PDO::FETCH_ASSOC)){
printf("A(n) %s is a type of %s<br />", $row['name'], $row['species']);
}
因爲在第一次你每次都在查詢數據庫。如果有行,那麼它總是「真」。 –