2010-02-11 94 views
43

有沒有辦法檢索用於生成PDO Prepared語句對象的查詢?從PDO準備的語句獲得查詢返回

+0

可能的重複[從PDO準備語句獲取原始SQL查詢字符串](http://stackoverflow.com/questions/210564/getting-raw-sql-query-string-from-pdo-prepared-statements) – FFirmenich 2017-04-24 12:21:40

回答

31
+0

Bingo :http://www.php.net/manual/en/class.pdostatement.php#92046 – Strae 2010-02-11 10:55:25

+38

每當我使用它,它仍然顯示params作爲佔位符。反正有沒有帶參數設置的字符串?數據庫得到它的方式? – 2010-10-25 13:35:51

+3

你必須檢查你的數據庫日誌。對於MySQL,請查看此頁面:http://dev.mysql.com/doc/refman/5.0/en/query-log.html – Arkh 2010-10-26 12:49:05

9

如果你不反對延長默認\ PDO和\ PDOStatement對象的對象,你可以考慮在尋找:

github.com/noahheck/E_PDOStatement

此擴展PDO可以讓你看到一個完整的查詢語句作爲可能在數據庫級別執行的示例。它使用正則表達式來插入你的PDO語句的綁定參數。

通過擴展默認\ PDOStatement定義,E_PDOStatement可以將此增強功能提供給默認功能,而無需修改您的正常工作流程。

聲明:我創建了此擴展。

我只是希望這對別人有幫助。

0

自我推銷:​​ 您可以使用調試方法輸出期望的查詢。我最近一直在更新它。