mysqli_stmt::bind_param

mysqli_stmt_bind_param

(PHP 5, PHP 7, PHP 8)

mysqli_stmt::bind_param -- mysqli_stmt_bind_param — Прив'язка змінних до параметрів запиту, що готується.

Опис

Об'єктно-орієнтований стиль

public mysqli_stmt::bind_param(string $types, mixed &$var, mixed &...$vars): bool

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

mysqli_stmt_bind_param(    mysqli_stmt $statement,    string $types,    mixed &$var,    mixed &...$vars): bool

Прив'язує змінні до позначок параметрів у SQL-вираженні, яке було підготовлено функцією mysqli_prepare() або mysqli_stmt_prepare()

Зауваження :

Якщо розмір даних змінної перевищує максимально допустимий розмір пакета (max_allowed_packet), необхідно задати значення bпараметруtypes та використовувати функцію mysqli_stmt_send_long_data(), яка передаватиме дані пакетами.

Зауваження :

При использованииmysqli_stmt_bind_param() спільно з call_user_func_array() необхідно дотримуватися особливої ​​обережності. Потрібно брати до уваги, що mysqli_stmt_bind_param() приймає як параметри лише посилання на значення, у той час як call_user_func_array() приймає перелік параметрів, які можуть передаватися як за посиланням, так і за значенням.

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

stmt

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

types

Рядок, що містить один або більше символів, кожен з яких задає тип значення змінної, що прив'язується:

Символи, що задають тип

СимволОпис
iу відповідної змінної тип int
dу відповідної змінної тип float
sу відповідної змінної тип string
bвідповідна змінна є великим двійковим об'єктом (blob) і пересилатиметься пакетами

var

vars

Кількість змінних та довжина рядка types повинні точно відповідати кількості параметрів у запиті.

Значення, що повертаються

Повертає true у разі успішного виконання або **false**в случае возникновения ошибки.

Помилки

Якщо сповіщення про помилки mysqli включено (MYSQLI_REPORT_ERROR) та запитана операція не вдалася, видається попередження. Якщо, крім того, встановлено режим MYSQLI_REPORT_STRICT, натомість буде викинуто виняток mysqli_sql_exception

Приклади

Приклад #1 Приклад використання mysqli_stmt::bind_param()****

Об'єктно-орієнтований стиль

Loading...

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

Loading...

Результат виконання наведених прикладів:

строк добавлено: 1.
1 row deleted.

Приклад #2 Приклад использования...для предоставления аргументов

Оператор... може використовуватися для надання списку аргументів змінної довжини, наприклад, у конструкції WHERE IN

Loading...

Результат виконання наведених прикладів:

найдено строк: 10.

Дивіться також

  • mysqli_stmt_bind_result() - Прив'язка змінних до підготовленого запиту для розміщення результату
  • mysqli_stmt_execute() - Виконує підготовлене затвердження
  • mysqli_stmt_fetch() - пов'язує результати підготовленого виразу зі змінними
  • mysqli_prepare() - готує SQL вираз до виконання
  • mysqli_stmt_send_long_data() - Відправлення даних блоками
  • mysqli_stmt_errno() - Повертає код помилки виконання останнього запиту
  • mysqli_stmt_error() - Повертає рядок із поясненням останньої помилки під час виконання запиту