PHP 都建議使用 Prepare 來避免 SQL injection 等等的,但是在 Debug 的時候,最困擾的就是如何把當下 SQL 語法印出來。
此套件支援 Debug 主要是可以將 SQL 語法印出。
PHP PDO Prepare Debug 印出 SQL 語法
由程式內容可以看到,主要就是把 Value Mapping 回 Prepare 的 binding :xx 或 :1 的值。
- PHP PDO Debug 套件:GitHub - panique/pdo-debug: Emulates the SQL query constructed by PDO. The magic behind: A simple function that combines your parameters and the raw query. Not perfect, but does the job.
- 在 execute($parameters) 後面,加入:
- echo PdoDebugger::show($sql, $parameters); 即可印出 SQL 語法。
想要純印參數的內容,可以使用 PDOStatement::debugDumpParams()