為什麼PDO在WHERE IN子句中綁定參數失敗?

Susan Sarandon
發布: 2024-11-18 02:37:02
原創
596 人瀏覽過

Why Does PDO Fail to Bind Parameters in WHERE IN Clauses?

無法使用PDO 為WHERE IN 子句綁定參數

您的程式碼嘗試使用PDO 為WHERE IN 子句綁定參數,但是它始終返回計數1。用變數本身取代參數化值會產生準確的計數。造成這種差異的原因是 PDO 無法有效綁定 IN 子句的參數。

提供的陣列被內爆為逗號分隔的字串並指派為參數值。但是,資料庫將此字串解釋為單一值,類似於使用:

SELECT foo FROM bar WHERE ids IN ('1,2,3')
登入後複製

儘管存在多個值,資料庫仍將其視為單一字串。要解決此問題,您必須手動將 IN 清單插入查詢中:

'SELECT foo FROM bar WHERE ids IN (' . $myArray .')'
登入後複製

此方法可確保每個陣列元素都正確包含在 IN 子句中。不幸的是,目前沒有其他可行的解決方案可以使用 PDO 在 WHERE IN 子句中綁定參數。

以上是為什麼PDO在WHERE IN子句中綁定參數失敗?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板