mysqli_stmt::fetch

mysqli_stmt_fetch

(PHP 5, PHP 7, PHP 8)

mysqli_stmt::fetch -- mysqli_stmt_fetchLee los resultados de una consulta MySQL preparada en variables vinculadas

Descripción

Estilo orientado a objetos

public mysqli_stmt::fetch(): ?bool

Estilo por procedimientos

mysqli_stmt_fetch(mysqli_stmt $statement): ?bool

Devuelve el resultado de una consulta preparada en una variable, vinculada por mysqli_stmt_bind_result().

Nota:

Tenga en cuenta que todas las columnas deben ser vinculadas por la aplicación antes de llamar a mysqli_stmt_fetch().

Nota:

Los datos se transfieren sin ser almacenados en búfer, sin llamar a la función mysqli_stmt_store_result(), lo que puede tener un impacto en el rendimiento (pero también, reducir el uso de memoria).

Parámetros

stmt

Sólo estilo por procediminetos: Un identificador de declaraciones devuelto por mysqli_stmt_init().

Valores devueltos

Valores devueltos
Valor Descripción
true Éxito. Los datos han sido leídos.
false Se ha producido un error.
null No hay más líneas para leer o los datos han sido truncados.

Errores/Excepciones

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.

Ejemplos

Ejemplo #1 Estilo orientado a objetos

<?php
$mysqli
= new mysqli("localhost", "my_user", "my_password", "world");

/* Verifica la conexión */
if (mysqli_connect_errno()) {
printf("Fallo en la conexión: %s\n", mysqli_connect_error());
exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 150,5";

if (
$stmt = $mysqli->prepare($query)) {

/* Ejecución de la consulta */
$stmt->execute();

/* Vinculación de las variables de resultado */
$stmt->bind_result($name, $code);

/* Lectura de los valores */
while ($stmt->fetch()) {
printf ("%s (%s)\n", $name, $code);
}

/* Cierre de la sentencia */
$stmt->close();
}

/* Cierre de la conexión */
$mysqli->close();
?>

Ejemplo #2 Estilo por procedimientos

<?php
$link
= mysqli_connect("localhost", "my_user", "my_password", "world");

/* Verifica la conexión */
if (mysqli_connect_errno()) {
printf("Fallo en la conexión: %s\n", mysqli_connect_error());
exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 150,5";

if (
$stmt = mysqli_prepare($link, $query)) {

/* Ejecución de la consulta */
mysqli_stmt_execute($stmt);

/* Vinculación de las variables de resultado */
mysqli_stmt_bind_result($stmt, $name, $code);

/* Lectura de los valores */
while (mysqli_stmt_fetch($stmt)) {
printf ("%s (%s)\n", $name, $code);
}

/* Cierre de la sentencia */
mysqli_stmt_close($stmt);
}

/* Cierre de la conexión */
mysqli_close($link);
?>

El resultado de los ejemplos sería:

Rockford (USA)
Tallahassee (USA)
Salinas (USA)
Santa Clarita (USA)
Springfield (USA)

Ver también