mysqli_stmt::bind_result

mysqli_stmt_bind_result

(PHP 5, PHP 7, PHP 8)

mysqli_stmt::bind_result -- mysqli_stmt_bind_resultVincula variables a un conjunto de resultados

Descripción

Estilo orientado a objetos

public mysqli_stmt::bind_result(mixed &$var, mixed &...$vars): bool

Estilo por procedimientos

mysqli_stmt_bind_result(mysqli_stmt $statement, mixed &$var, mixed &...$vars): bool

Asocia columnas de un resultado a variables.

Cuando se llama a mysqli_stmt_fetch() para leer valores, el protocolo MySQL coloca los datos en las variables especificadas var/vars.

Una columna puede ser vinculada en cualquier momento, incluso después de que un conjunto de resultados haya sido parcialmente recuperado. La nueva vinculación entra en vigor la próxima vez que se llame a mysqli_stmt_fetch().

Nota:

Todas las columnas deben ser vinculadas después de la ejecución de la función mysqli_stmt_execute() y antes de la llamada a la función mysqli_stmt_fetch(). Dependiendo del tipo de valor de la columna, el tipo de variable PHP puede ser modificado automáticamente.

Nota:

Una columna puede ser asociada o reasociada en cualquier momento, incluso después de una lectura parcial del resultado. La nueva asociación entra en vigor en la próxima llamada a mysqli_stmt_fetch().

Sugerencia

Esta función es útil para resultados básicos. Para recuperar un conjunto de resultados iterable, o recuperar cada fila como array u objeto, utilice mysqli_stmt_get_result().

Parámetros

stmt

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

var

La primera variable a vincular.

vars

Variables adicionales a vincular.

Valores devueltos

Devuelve true en caso de éxito o false en caso de error.

Ejemplos

Ejemplo #1 Estilo orientado a objetos

<?php

mysqli_report
(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* Preparación de la consulta */
$stmt = $mysqli->prepare("SELECT Code, Name FROM Country ORDER BY Name LIMIT 5");
$stmt->execute();

/* Vincular variables a una declaración preparada */
$stmt->bind_result($col1, $col2);

/* Recuperación de los valores */
while ($stmt->fetch()) {
printf("%s %s\n", $col1, $col2);
}
?>

Ejemplo #2 Estilo por procedimientos

<?php

mysqli_report
(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* Preparación de la consulta */
$stmt = mysqli_prepare($link, "SELECT Code, Name FROM Country ORDER BY Name LIMIT 5");
mysqli_stmt_execute($stmt);

/* Vincular variables a una declaración preparada */
mysqli_stmt_bind_result($stmt, $col1, $col2);

/* Recuperación de los valores */
while (mysqli_stmt_fetch($stmt)) {
printf("%s %s\n", $col1, $col2);
}
?>

El resultado del ejemplo sería:

AFG Afghanistan
ALB Albania
DZA Algeria
ASM American Samoa
AND Andorra

Ver también