2016-08-06 5 views
0

Существует общий цикл примеров, используемый в преподавании запросов PHP Select, и я просто писал немного кода для выбора из таблицы. Раньше я использовал этот код, но никогда не беспокоился о том, почему он написан так.

while($row = mysqli_fetch_assoc($result)){ 

} 

Я понимаю, что цикл в то время как это то, что работает, пока условие не станет ложным, иногда используя добавочную стоимость и сравнения или что нет. В этом случае я не уверен, что заставляет цикл «останавливать цикл»? Первоначально я видел бы это как бесконечный цикл, но, возможно, я не совсем уверен, что mysqli_fetch_assoc($result) может возвращаться каждый раз, когда цикл идет «круглым». Может кто-нибудь, пожалуйста, объясните мне это? Спасибо

ответ

2

Результат задания в PHP такой же, как и значение, присвоенное переменной. То есть в заявлении $row = mysqli_fetch_assoc($result) имеется «значение» mysqli_fetch_assoc($result).

while будет зависеть до тех пор, пока условие не будет ложным или, точнее, == false. Обратите внимание, что это отличается от === false. Поскольку в PHP, null == false, цикл будет продолжаться до тех пор, пока в результате, возвращаемом из базы данных MySQL, больше не будет строк, так как функция возвращает null, когда строк больше нет.

+0

ok, так есть ли инкрементное значение в цикле? Другими словами, как это знать, чтобы возвращать следующую строку в таблице, а не одну и ту же? – Pixelknight1398

+1

Сохраняется в '$ result'. –

Смежные вопросы