Função PHP mysqli_next_result ()
Definição e Uso
o mysqli_next_result()A função prepara o próximo resultado da consulta múltipla anterior. Você pode recuperar o conjunto de resultados preparado usando a função mysqli_use_result () .
Sintaxe
mysqli_next_result($con)
Parâmetros
Sr. Não | Parâmetro e Descrição |
---|---|
1 | con(Mandatory) Este é um objeto que representa uma conexão com o servidor MySQL. |
Valores Retornados
A função mysqli_next_result () retorna verdadeiro se houver mais conjuntos de resultados e retorna falso se não houver mais conjuntos de resultados ou, se a próxima consulta tiver erros.
Versão PHP
Esta função foi introduzida pela primeira vez no PHP Versão 5 e funciona em todas as versões posteriores.
Exemplo
O exemplo a seguir demonstra o uso da função mysqli_next_result () (no estilo procedural) -
<?php
//Creating a connection
$con = mysqli_connect("localhost", "root", "password", "test");
//Executing the multi query
$query = "SELECT * FROM players;SELECT * FROM emp;SELECT * FROM tutorials";
$res = mysqli_multi_query($con, $query);
$count = 0;
if ($res) {
do {
$count = $count+1;
mysqli_use_result($con);
} while (mysqli_next_result($con));
}
print("Number of result sets: ".$count);
mysqli_close($con);
?>
Isso produzirá o seguinte resultado -
Number of result sets: 3
Exemplo
No estilo orientado a objetos, a sintaxe desta função é $ con> next_result (); A seguir está o exemplo desta função no estilo orientado a objetos $ minus;
<?php
$con = new mysqli("localhost", "root", "password", "test");
//Multi query
$res = $con->multi_query("SELECT * FROM players;SELECT * FROM emp;SELECT * FROM tutorials");
$count = 0;
if ($res) {
do {
$count = $count+1;
$con-> use_result();
} while ($con->next_result());
}
print("Number of result sets: ".$count);
//Closing the connection
$res = $con -> close();
?>
Isso produzirá o seguinte resultado -
Number of result sets: 3
Exemplo
O exemplo a seguir recupera os registros de todos os conjuntos de resultados da muti-query -
//Creating a connection
$con = mysqli_connect("localhost", "root", "password", "test");
//Executing the multi query
$query = "SELECT * FROM players;SELECT * FROM emp";
$res = mysqli_multi_query($con, $query);
if ($res) {
do {
if ($result = mysqli_use_result($con)) {
while ($row = mysqli_fetch_row($result)) {
print("Name: ".$row[0]."\n");
print("Age: ".$row[1]."\n");
}
mysqli_free_result($result);
}
if (mysqli_more_results($con)) {
print("\n");
}
} while (mysqli_next_result($con));
}
mysqli_close($con);
Isso produzirá o seguinte resultado -
Name: Dhavan
Age: 33
Name: Rohit
Age: 28
Name: Kohli
Age: 25
Name: Raju
Age: 25
Name: Rahman
Age: 30
Name: Ramani
Age: 22