SQLite3Stmt::getSQL

(PHP 7 >= 7.4.0)

SQLite3Stmt::getSQLПолучить SQL-запрос в виде строки из запроса

Описание

public SQLite3Stmt::getSQL ( bool $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"