(PHP 5, PHP 7, PHP 8)
mysqli_result::$num_rows -- mysqli_num_rows — Получает количество строк в наборе результатов
Объектно-ориентированный стиль
Процедурный стиль
Возвращает число рядов в результирующей выборке.
Поведение функции mysqli_num_rows() зависит от того,
используется ли буферизованная или не буферизованная результирующая выборка.
Функция возвращает 0
для небуферизованных наборов результатов,
если с сервера не были получены все строки.
result
Только для процедурного стиля: объект mysqli_result, полученный с помощью mysqli_query(), mysqli_store_result(), mysqli_use_result() или mysqli_stmt_get_result().
Возвращает целое число (int), представляющее количество выбранных строк.
Возвращает 0
в небуферизованном режиме,
если с сервера не были получены все строки.
Замечание:
Если количество строк больше, чем
PHP_INT_MAX
, число будет возвращено как строка (string).
Пример #1 Объектно-ориентированный стиль
<?php
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
$result = $mysqli->query("SELECT Code, Name FROM Country ORDER BY Name");
/* Получение количества строк в наборе результатов */
$row_cnt = $result->num_rows;
printf("Получено %d строк.\n", $row_cnt);
?>
Пример #2 Процедурный стиль
<?php
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
$result = mysqli_query($link, "SELECT Code, Name FROM Country ORDER BY Name");
/* Получение количества строк в наборе результатов */
$row_cnt = mysqli_num_rows($result);
printf("Получено %d строк.\n", $row_cnt);
Результат выполнения данных примеров:
Получено 239 строк.
Замечание:
В отличие от функции mysqli_stmt_num_rows(), у этой функции нет варианта в объектно-ориентированном стиле. В объектно-ориентированном стиле используйте метод чтения.