English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Функция mysqli_stmt_num_rows() возвращает количество строк в наборе результатов команды.
mysqli_stmt_num_rows()Функция принимает объект команды в качестве параметра и возвращает количество строк в заданном наборе результатов команды.
mysqli_stmt_num_rows($stmt)
Номер | Параметры и описание |
---|---|
1 | stmt(обязателен) Это объект, представляющий собой команду SQL для выполнения. |
Функция mysqli_stmt_num_rows() в PHP возвращает целое значение, которое указывает на количество строк в наборе результатов запроса SQL.
Эта функция была введена в 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