English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP Основы

PHP Уровень продвинутый

PHP & MySQL

PHP Референс Мануал

Пример использования функции mysqli_stmt_num_rows() в PHP

PHP MySQLi руководство

Функция mysqli_stmt_num_rows() возвращает количество строк в наборе результатов команды.

Определение и использование

mysqli_stmt_num_rows()Функция принимает объект команды в качестве параметра и возвращает количество строк в заданном наборе результатов команды.

Синтаксис

mysqli_stmt_num_rows($stmt)

Параметр

НомерПараметры и описание
1

stmt(обязателен)

Это объект, представляющий собой команду SQL для выполнения.

Возвратное значение

Функция mysqli_stmt_num_rows() в PHP возвращает целое значение, которое указывает на количество строк в наборе результатов запроса SQL.

Версия PHP

Эта функция была введена в PHP версии 5 и может использоваться во всех более высоких версиях.

Онлайн пример

Ниже приведен примерmysqli_stmt_num_rows()Использование функции (стиль программирования procedural)

<?php
   $con = mysqli_connect("localhost", "root", "password", "mydb");
   mysqli_query($con, "CREATE TABLE Test(Name VARCHAR(255), AGE INT)");
   print("Создание таблицы.....\n");
   mysqli_query($con, "insert into Test values('Raju', 25),('Rahman', 30),('Sarmista', 27)");
   print("Вставка записей.....\n");
   //Чтение записей
   $stmt = mysqli_prepare($con, "SELECT * FROM Test");
   //Выполнить команду
   mysqli_stmt_execute($stmt);
   mysqli_stmt_store_result($stmt);
   //Количество строк
   $count = mysqli_stmt_num_rows($stmt);
   print("Количество строк в таблице: ".$count."\n");
   //Закончить команду
   mysqli_stmt_close($stmt);
   //Закрыть соединение
   mysqli_close($con);
?>

Результат вывода

Создание таблицы.....
Вставка записей.....
Количество строк в таблице: 3

Онлайн пример

В стилистике面向 объектов синтаксис функции$con->num_rows;。Вот пример функции в стилистике面向对象的 программирования;

<?php
   //Установление соединения
   $con = new mysqli("localhost", "root", "password", "mydb");
   $con ->query("CREATE TABLE Test(Name VARCHAR(255), AGE INT)");
   print("Создание таблицы.....\n");
   $con ->query("insert into Test values('Raju', 25),('Rahman', 30),('Sarmista', 27)");
   print("Вставка записей.....\n");
   $stmt = $con ->prepare("SELECT * FROM Test");
   //Выполнить команду
   $stmt->execute();
   $stmt->store_result();
   //Количество строк
   $count = $stmt ->num_rows;
   print("Количество строк в таблице".$count);
   //Закончить команду
   $stmt->close();
   //Закрыть соединение
   $con->close();
?>

Результат вывода

Создание таблицы.....
Вставка записей.....
Количество строк в таблице: 3

Онлайн пример

Предположим, что мы создали таблицу под названием cricketers с помощью следующих данных;

mysql> select * from cricketers;
+----+------------+------------+---------------+----------------+
| ID | First_Name | Last_Name  | Date_Of_Birth | Place_Of_Birth |
+----+------------+------------+---------------+----------------+
|  1 | Shikhar    | Dhawan     | 1981-12-05    | Delhi          |
|  2 | Jonathan   | Trott      | 1981-04-22    | CapeTown       | 
|  3 | Kumara     | Sangakkara | 1977-10-27    | Matale         |
|  4 | Virat      | Kohli      | 1988-11-05    | Delhi          |
|  5 | Rohit      | Sharma     | 1987-04-30    | Nagpur         |
|  6 | Ravindra   | Jadeja     | 1988-12-06    | Nagpur         |
+----+------------+------------+---------------+----------------+
6 rows in set (0.07 sec)

Если вы пытаетесь напрямую вызвать эту функцию, так как результат еще не сохранен, то возвращается0  :

<?php
   $con = mysqli_connect("localhost", "root", "password", "mydb");
   //Чтение записей
   
   //Выполнить команду
   mysqli_stmt_execute($stmt);
   print("Строк в таблице: ".mysqli_stmt_num_rows($stmt));
   //Закончить команду
   mysqli_stmt_close($stmt);
   //Закрыть соединение
   mysqli_close($con);
?>

Результат вывода

Строк в таблице: 0

PHP MySQLi руководство