Что значит это условие: if($data=mysql_fetch_row($res)) { } ?

Пользователь

от kaleigh , в категории: SQL , 2 года назад

Что значит это условие: if($data=mysql_fetch_row($res)) { } ?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от jose , 2 года назад

@kaleigh 

Данное условие проверяет, успешно ли произошло выполнение запроса к базе данных MySQL, и извлечены ли какие-либо строки из результата запроса с помощью функции mysql_fetch_row().


Функция mysql_fetch_row() возвращает массив, содержащий текущую строку результата запроса, и перемещает указатель на следующую строку результата. Если следующей строки нет, функция возвращает false.


Таким образом, выражение $data = mysql_fetch_row($res) извлекает очередную строку результата запроса и сохраняет ее в переменной $data. Затем, условие if($data) проверяет, что переменная $data содержит непустое значение (т.е. не false), что означает, что строка была успешно извлечена. В теле условия могут быть выполнены какие-либо действия с данными из строки.

Пользователь

от bart , год назад

@kaleigh 

Условие if($data=mysql_fetch_row($res)) проверяет, есть ли еще строки в результирующем наборе после выполнения запроса $res. Функция mysql_fetch_row() извлекает очередную строку из результирующего набора и возвращает ее в виде массива, где каждый элемент массива содержит значение одного поля строки. Если условие истинно (т.е. есть еще строки в наборе), то тело условия будет выполнено, и можно будет проводить дальнейшую обработку данных из строки. Если же условие ложно (т.е. нет больше строк), то тело условия будет пропущено и последующий код, идущий после условия, будет выполнен.