SQLite3Stmt::getSQL
(PHP 7 >= 7.4.0)
SQLite3Stmt::getSQL — Получить SQL-запрос в виде строки из запроса
Описание
$expanded = false
) : string|false
Возвращает строковое представление SQL-запроса для подготовленного
запроса. Если параметр expanded
задан как false, будет возвращен не модифицированный SQL. Если
же expanded задан как true, все
подставляемые параметры запроса будут заменены на конкретные
значения, либо на NULL, если значения еще не были
привязаны.
Список параметров
-
expanded -
Заменять ли в возвращаемом SQL-запросе параметры на конкретные значения.
trueподдерживается только с libsqlite 3.14.
Возвращаемые значения
Возвращает SQL-запрос из подготовленного запроса, или false в случае возникновения ошибки.
Ошибки
Если expanded задан как true, но версия
libsqlite ниже 3.14, будет вызвана ошибка уровня
E_WARNING либо выброшено исключение
Exception, в зависимости от настроек
SQLite3::enableExceptions().
Примеры
Пример #1 Получение расширенного SQL-запроса
<?php
$db = new SQLite3(':memory:');
$stmt = $db->prepare("SELECT :a, ?, :c");
$stmt->bindValue(':a', 'foo');
$answer = 42;
$stmt->bindParam(2, $answer);
var_dump($stmt->getSQL(true));
?>
Результатом выполнения данного примера будет что-то подобное:
string(24) "SELECT 'foo', '42', NULL"