[英]PHP: While loop with fetch array running forever?
我正在嘗試顯示數據庫中的所有記錄,但它只是在大約1000個垃圾郵件中散布,直到最終達到30秒超時。 我在數據庫中只有3條記錄,不確定為什么要這樣做嗎?
while($news = $engine->fetch_array("SELECT * FROM `cms_news` ORDER BY `id` DESC"))
{
echo 'lol<br>';
}
在最終超時之前,“ lol”被打印了數百次(超過執行時間)
這是$ engine類中的fetch_array函數:
final public function fetch_array($sql)
{
$result = $this->connection->query($sql);
return $result->fetch_array(MYSQLI_ASSOC);
}
只要是真的,while循環就會一直運行。 您將必須改變做事方式或要實現的目標的邏輯。
在您的示例中,while循環
while($news = $engine->fetch_array("SELECT * FROM `cms_news` ORDER BY `id` DESC")) {
保持真實,因此為什么要繼續運行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.