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() - Повертає рядок із поясненням останньої помилки під час виконання запиту