如何使用PDO 檢查PHP 中的參數化查詢
在PHP 中使用PDO 進行資料庫存取時,採用參數化查詢可以透過屏蔽來增強安全性防止SQL注入。然而,驗證資料庫執行的實際查詢可能具有挑戰性,因為帶有令牌和參數的查詢是單獨傳輸的。
直接檢索不可能
As Ben James 解釋說,在 PHP 端沒有直接的方法來獲取完整的 SQL 查詢。這是因為資料庫獨立接收帶有標記和參數的查詢,而實際的查詢是在資料庫內組裝的。由於令牌處理和綁定技術的變化,在 PHP 端模擬替換過程也是不可行的。
記錄作為解決方法
檢查執行的實際查詢對於資料庫,解決方法是記錄所有 SQL 查詢。在MySQL 中,這可以透過修改my.cnf(或Windows 環境中的my.ini)並添加以下行來實現:
log=[REPLACE_BY_PATH]/[REPLACE_BY_FILE_NAME]
但是,這應該僅用於偵錯目的,而不是在生產環境以避免效能下降。
以上是## 如何檢查 PHP 中 PDO 實際執行的查詢?的詳細內容。更多資訊請關注PHP中文網其他相關文章!