SQLite3Stmt::bindParam

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

SQLite3Stmt::bindParam — Зв'язує параметр зі змінною підготовленого запиту

Опис

public SQLite3Stmt::bindParam(string|int $param, mixed &$var, int $type = SQLITE3_TEXT): bool

Зв'язує параметр із змінною підготовленого запиту.

Застереження

До PHP 7.2.14 та 7.3.0, SQLite3Stmt::reset() повинен викликатись до першого виклику SQLite3Stmt::execute()якщо потрібно, щоб пов'язане значення коректно оновлювалося при наступних викликах SQLite3Stmt::execute(). Якщо метод SQLite3Stmt::reset() не викликався, то пов'язане значення не змінюватиметься, навіть якщо значення, надане змінною, переданою SQLite3Stmt::bindParam(), змінилося або знову було викликано метод SQLite3Stmt::bindParam()

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

param

Або рядок (string) (для іменованих параметрів), або ціле число (int) (для позитивних параметрів), що ідентифікує змінну підготовленого запиту, якого має бути прив'язане значення. Якщо іменований параметр не починається з двокрапки (( : )) або знаку @, автоматично додається двокрапка ( : ). Позитивні параметри починаються з першого.

var

Параметр для прив'язки до змінного підготовленого запиту.

type

Тип даних параметра для прив'язування.

  • SQLITE3_INTEGER: Значення є цілим числом зі знаком, яке зберігається в 1, 2, 3, 4, 6 або 8 байт, залежно від величини значення.

  • SQLITE3_FLOAT: Значення є числом з плаваючою точкою, яке зберігається у вигляді 8-байтного числа IEEE з плаваючою точкою.

  • SQLITE3_TEXT: Значення є текстовим рядком, який зберігається в кодуванні бази даних (UTF-8, UTF-16BE або UTF-16-LE).

  • SQLITE3_BLOB: Значення є великим двійковим об'єктом (blob) даних, який зберігається так само, як і вхідні дані.

  • SQLITE3_NULL: Значення є значенням NULL.

У PHP 7.0.7, якщо type опущений, то він автоматично визначається з типу var: bool та int розглядаються як SQLITE3_INTEGER, float як SQLITE3_FLOAT, null як SQLITE3_NULL і всі інші як SQLITE3_TEXTРаньше, если тип опущен, то по умолчанию использовалсяSQLITE3_TEXT

Зауваження :

Якщо varравен**null**, він завжди обробляється як SQLITE3_NULL, независимо от заданногоtype

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

Повертає **true**якщо параметр прив'язаний до змінної підготовленого запиту, **false**в случае возникновения ошибки.

список змін

ВерсияОпис
7.4.0Параметрparam тепер підтримує нотацію @param

Приклади

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

У прикладі показано, як один підготовлений запит із прив'язкою одного параметра може використовуватися для вставки кількох рядків із різними значеннями.

Loading...

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

array(1) {
  ["bar"]=>
  string(3) "baz"
}
array(1) {
  ["bar"]=>
  string(2) "42"
}

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

  • SQLite3Stmt::bindValue() - Зв'язує значення параметра зі змінною підготовленого запиту
  • SQLite3::prepare() - готує SQL-запит для виконання