(PHP 5, PHP 7)
mysqli_stmt::fetch -- mysqli_stmt_fetch — Obtiene los resultados de una sentencia preparadas en las variables vinculadas
Estilo orientado a objetos
Estilo por procedimientos
Obtiene los resultados de una sentencia preparadas en las variables vinculadas mediante mysqli_stmt_bind_result().
Nota:
Observe que todas las columnas deben estar vinculadas por la aplicación antes de llamar a mysqli_stmt_fetch().
Nota:
Los datos son transferidos sin almacenarlos en buffer sin llamar a mysqli_stmt_store_result(), la cual puede disminuir el rendimiento (pero reduce el coste de memoria).
stmt
Sólo estilo por procediminetos: Un identificador de declaraciones devuelto por mysqli_stmt_init().
Valor | Descripción |
---|---|
TRUE |
Éxito. Los datos se han obtenido |
FALSE |
Ocurrió un error |
NULL |
No existen más filas/datos u ocurrió un truncamiento de los datos |
Ejemplo #1 Estilo orientado a objetos
<?php
$mysqli = new mysqli("localhost", "mi_usuario", "mi_contraseña", "world");
/* comprobar la conexión */
if (mysqli_connect_errno()) {
printf("Falló la conexión: %s\n", mysqli_connect_error());
exit();
}
$consulta = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 150,5";
if ($sentencia = $mysqli->prepare($consulta)) {
/* ejecutar la sentencia */
$sentencia->execute();
/* vincular las variables de resultados */
$sentencia->bind_result($nombre, $código);
/* obtener los valores */
while ($sentencia->fetch()) {
printf ("%s (%s)\n", $nombre, $código);
}
/* cerrar la sentencia */
$sentencia->close();
}
/* cerrar la conexión */
$mysqli->close();
?>
Ejemplo #2 Estilo por procedimientos
<?php
$enlace = mysqli_connect("localhost", "mi_usuario", "mi_contraseña", "world");
/* comprobar la conexión */
if (mysqli_connect_errno()) {
printf("Falló la conexión: %s\n", mysqli_connect_error());
exit();
}
$consulta = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 150,5";
if ($sentencia = mysqli_prepare($link, $consulta)) {
/* ejecutar la sentencia */
mysqli_stmt_execute($sentencia);
/* vincular las variables de resultados */
mysqli_stmt_bind_result($sentencia, $nombre, $código);
/* obtener los valores */
while (mysqli_stmt_fetch($sentencia)) {
printf ("%s (%s)\n", $nombre, $código);
}
/* cerrar la sentencia */
mysqli_stmt_close($sentencia);
}
/* cerrar la conexión */
mysqli_close($link);
?>
El resultado de los ejemplos sería:
Rockford (USA) Tallahassee (USA) Salinas (USA) Santa Clarita (USA) Springfield (USA)