Php/docs/sqlite3stmt.getsql
SQLite3Stmt::getSQL
(PHP 7 >= 7.4.0)
SQLite3Stmt::getSQL — Get the SQL of the statement
说明
public SQLite3Stmt::getSQL
([ bool $expanded
= false
] ) : string|false
Retrieves the SQL of the prepared statement. If expanded
is false
, the unmodified SQL is retrieved. If expanded
is true
, all query parameters are replaced with their bound values, or with
an SQL NULL
, if not already bound.
参数
expanded
- Whether to retrieve the expanded SQL. Passing
true
is only supported as of libsqlite 3.14.
返回值
Returns the SQL of the prepared statement, 或者在失败时返回 false
.
错误/异常
If expanded
is true
, but the libsqlite version is less
than 3.14, an error of level E_WARNING
or an Exception
is issued, according to SQLite3::enableExceptions().
范例
Example #1 Inspecting the expanded 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"