English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
A função mysqli_stmt_num_rows() retorna o número de linhas no conjunto de resultados da instrução.
mysqli_stmt_num_rows()A função aceita um objeto de instrução como parâmetro e retorna o número de linhas no conjunto de resultados da instrução fornecida.
mysqli_stmt_num_rows($stmt)
Número | Parâmetros e descrição |
---|---|
1 | stmt(obrigatório) Este é o objeto que representa a instrução de consulta SQL executada. |
A função PHP mysqli_stmt_num_rows() retorna um valor inteiro que indica o número de linhas no conjunto de resultados da instrução.
Versão do PHP5Esta função foi introduzida inicialmente na versão do PHP
A seguir, um exemplo de como isso é introduzido e pode ser usado em todas as versões mais recentes.mysqli_stmt_num_rows()Uso da função (estilo procedimental)-
<?php $con = mysqli_connect("localhost", "root", "password", "mydb"); mysqli_query($con, "CREATE TABLE Test(Name VARCHAR(255), AGE INT"); print("Criando tabela.....\n"); mysqli_query($con, "insert into Test values('Raju', 25),('Rahman', 30),('Sarmista', 27"); print("Inserindo registros.....\n"); //Lendo registros $stmt = mysqli_prepare($con, "SELECT * FROM Test"); //Executar declaração mysqli_stmt_execute($stmt); mysqli_stmt_store_result($stmt); //Número de linhas $count = mysqli_stmt_num_rows($stmt); print("Número de linhas na tabela: ".$count."\n"); //Terminar declaração mysqli_stmt_close($stmt); //Fechar conexão mysqli_close($con); ?>
Resultados de saída
Criar tabela..... Inserir registro..... Número de linhas na tabela: 3
Na estilo orientado a objetos, a sintaxe da função é:$con-> num_rows;.Aqui está um exemplo da função nessaestyle orientada a objetos;
<?php //Conectando... $con = new mysqli("localhost", "root", "password", "mydb"); $con -> query("CREATE TABLE Test(Name VARCHAR(255), AGE INT"); print("Criando tabela.....\n"); $con -> query("insert into Test values('Raju', 25),('Rahman', 30),('Sarmista', 27"); print("Inserindo registros.....\n"); $stmt = $con -> prepare("SELECT * FROM Test"); //Executar declaração $stmt->executar(); $stmt->armazenar_resultado(); //Número de linhas $count = $stmt ->num_rows; print("Número de linhas".$count); //Terminar declaração $stmt->fechar(); //Fechar conexão $con->fechar(); ?>
Resultados de saída
Criar tabela..... Inserir registro..... Número de linhas na tabela: 3
Suponha que usamos os seguintes dados para criar uma tabela chamada cricketers;
mysql> select * from cricketers; +----+------------+------------+---------------+----------------+ | ID | Primeiro_Nome | Último_Nome | Data_de_Nascimento | Lugar_de_Nascimento | +----+------------+------------+---------------+----------------+ | 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 linhas no conjunto (0.07 sec)
Se você tentar chamar diretamente essa função, pois os resultados ainda não foram armazenados, então é retornado0 :
<?php $con = mysqli_connect("localhost", "root", "password", "mydb"); //Lendo registros $stmt = mysqli_prepare($con, "SELECT * FROM cricketers"); //Executar declaração mysqli_stmt_execute($stmt); print("Número de linhas na tabela: ".mysqli_stmt_num_rows($stmt)); //Terminar declaração mysqli_stmt_close($stmt); //Fechar conexão mysqli_close($con); ?>
Resultados de saída
Número de linhas na tabela: 0