(PHP 5, PHP 7, PHP 8)
mysqli_stmt::store_result -- mysqli_stmt_store_result — Almacena un conjunto de resultados en un búfer interno
Estilo orientado a objetos
Estilo por procedimientos
Esta función debería ser llamada para consultas que produzcan un conjunto de resultados (por ejemplo, SELECT, SHOW, DESCRIBE, EXPLAIN)
solo si el conjunto de resultados completo debe ser almacenado en búfer por PHP.
Cada llamada sucesiva a mysqli_stmt_fetch() devolverá
los datos almacenados en búfer.
Nota:
No es necesario llamar a mysqli_stmt_store_result() para otros tipos de consultas, pero si se hace, no hay problema y no causará ninguna pérdida notable de rendimiento en ningún caso. Puede detectarse en todos los casos si la consulta va a producir un conjunto de resultados observando si la función mysqli_stmt_result_metadata() devuelve
false.
stmtSólo estilo por procediminetos: Un identificador de declaraciones devuelto por mysqli_stmt_init().
If mysqli error reporting is enabled (MYSQLI_REPORT_ERROR) and the requested operation fails,
a warning is generated. If, in addition, the mode is set to MYSQLI_REPORT_STRICT,
a mysqli_sql_exception is thrown instead.
Ejemplo #1 Estilo orientado a objetos
<?php
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
$query = "SELECT Name, CountryCode FROM City ORDER BY Name LIMIT 20";
$stmt = $mysqli->prepare($query);
$stmt->execute();
/* Almacenar el resultado en un búfer interno */
$stmt->store_result();
printf("Número de filas: %d.\n", $stmt->num_rows);Ejemplo #2 Estilo por procedimientos
<?php
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
$query = "SELECT Name, CountryCode FROM City ORDER BY Name LIMIT 20";
$stmt = mysqli_prepare($link, $query);
mysqli_stmt_execute($stmt);
/* Almacenar el resultado en un búfer interno */
mysqli_stmt_store_result($stmt);
printf("Número de filas: %d.\n", mysqli_stmt_num_rows($stmt));El resultado de los ejemplos sería:
Número de filas: 20.