mysqli_stmt::bind_result

mysqli_stmt_bind_result

(PHP 5, PHP 7, PHP 8)

mysqli_stmt::bind_result -- mysqli_stmt_bind_result Привязка переменных к подготовленному запросу для размещения результата

Описание

Объектно-ориентированный стиль

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

Процедурный стиль

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

Привязывает столбцы результирующего набора к переменным.

При вызове mysqli_stmt_fetch() для выборки данных, протокол клиент-серверного взаимодействия MySQL помещает выбранные данные в переменные var/vars, привязанные к столбцам результата выборки.

Столбцы можно привязывать и перепривязывать многократно, даже когда результирующий набор уже частично выбран. Новая привязка даст эффект при следующем вызове mysqli_stmt_fetch().

Замечание:

Все столбцы должны быть привязаны к переменным после вызова mysqli_stmt_execute() и до вызова mysqli_stmt_fetch(). В зависимости от типов данных столбцов привязанные переменные могут неявно изменять свой PHP тип.

Замечание:

В зависимости от типов столбцов связанные переменные могут незаметно изменяться на соответствующий тип PHP.

Подсказка

Функция полезна для простых результатов. Чтобы получить повторяемый набор результатов или каждую строку как массив или объект, используйте mysqli_stmt_get_result().

Список параметров

stmt

Только для процедурного стиля: объект mysqli_stmt, который вернула функция mysqli_stmt_init().

var

Привязываемая переменная.

vars

Остальные привязываемые переменные.

Возвращаемые значения

Возвращает true в случае успешного выполнения или false, если возникла ошибка.

Примеры

Пример #1 Объектно-ориентированный стиль

<?php

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


$stmt = $mysqli->prepare("SELECT Code, Name FROM Country ORDER BY Name LIMIT 5");
$stmt->execute();


$stmt->bind_result($col1, $col2);


while ($stmt->fetch()) {
printf("%s %s\n", $col1, $col2);
}

Пример #2 Процедурный стиль

<?php

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


$stmt = mysqli_prepare($link, "SELECT Code, Name FROM Country ORDER BY Name LIMIT 5");
mysqli_stmt_execute($stmt);


mysqli_stmt_bind_result($stmt, $col1, $col2);


while (mysqli_stmt_fetch($stmt)) {
printf("%s %s\n", $col1, $col2);
}

Результат выполнения приведённых примеров:

AFG Afghanistan ALB Albania DZA Algeria ASM American Samoa AND Andorra

Смотрите также

  • mysqli_stmt_get_result() - Получает результат из подготовленного запроса в виде объекта mysqli_result
  • mysqli_stmt_bind_param() - Привязка переменных к параметрам подготавливаемого запроса
  • mysqli_stmt_execute() - Выполняет подготовленное утверждение
  • mysqli_stmt_fetch() - Связывает результаты подготовленного выражения с переменными
  • mysqli_prepare() - Подготавливает SQL выражение к выполнению
  • mysqli_stmt_prepare() - Подготавливает утверждение SQL к выполнению
To Top