SQLite3Stmt::getSQL

(PHP 7 >= 7.4.0, PHP 8)

SQLite3Stmt::getSQL获取语句的 SQL

描述

public SQLite3Stmt::getSQL(bool $expand = false): string|false

检索准备好的语句的 SQL。如果 expandfalse,则检索未修改的 SQL。如果 expandtrue,则所有查询参数将被替换为其绑定值,或者如果尚未绑定,则替换为 SQL NULL

参数

expand

是否检索扩展的 SQL。传递 true 仅在 libsqlite 3.14 或更高版本中支持。

返回值

返回准备好的语句的 SQL,或在失败时返回 false

错误/异常

如果 expandtrue,但 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"
添加注释

用户贡献注释

此页面没有用户贡献注释。
To Top