PHP: Хотя цикл с массивом извлечения работает вечно? - PullRequest
0 голосов
/ 27 мая 2018

Я пытаюсь отобразить все записи из базы данных, но он просто спамит около 1000, пока не достигнет 30-секундного тайм-аута.У меня есть только 3 записи в базе данных, не уверен, почему это происходит?

while($news = $engine->fetch_array("SELECT * FROM `cms_news` ORDER BY `id` DESC"))
{
    echo 'lol<br>';
}

"lol" печатается сотни раз, прежде чем окончательно истекает время ожидания (превышено время выполнения)

Вот функция fetch_array из класса $ engine:

final public function fetch_array($sql)
{
    $result = $this->connection->query($sql);
    return $result->fetch_array(MYSQLI_ASSOC);
}

1 Ответ

0 голосов
/ 27 мая 2018

Цикл while будет работать до тех пор, пока это правда.Вам придется изменить логику того, как вы делаете вещи, или того, чего вы пытаетесь достичь.

В вашем примере цикл while,

while($news = $engine->fetch_array("SELECT * FROM `cms_news` ORDER BY `id` DESC")) {

продолжает быть правдой, поэтому и продолжает работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...