0

根据:https ://adodb.org/dokuwiki/doku.php?id=v5:userguide:portable_sql#prepare_execute

$stmt = $db->prepare("SELECT * FROM customers WHERE custid=? AND state=?");
$rs = $db->execute($stmt, array(999,'New York'));

首先如何预览 ADOdb 准备的 SQL 而不执行?即:

"SELECT * FROM customers WHERE custid=999 AND state='New York'"
4

1 回答 1

0

这个类提供了一个解决方案:

https://github.com/jasny/dbquery-mysql/blob/master/src/Jasny/DB/MySQL/QuerySplitter.php

$stmt = "SELECT * FROM customers WHERE custid=? AND state=?";
$params = array(999,'New York');

$split = new QuerySplitter;
$query = $split->bind($stmt , $params);
die($query);

//SELECT * FROM customers WHERE custid=99 AND state='New York'
于 2019-10-23T21:47:48.373 回答