使用常數準備好的語句時,出現「無法透過引用傳遞參數2」之類別的錯誤可能會出現。與bindParam(它使用引用並且在bindParam執行期間不提取值)不同,bindValue就是用於此目的。
有問題的程式碼:
$stmt->bindParam(':v1', PDO::PARAM_NULL);
要解決此問題,請替換bindParam與bindValue並提供一個常數值作為參數。
$stmt->bindValue(':v1', null, PDO::PARAM_INT);
請注意,在bindValue中使用PDO::PARAM_NULL可能不適合所有人。相反,請使用 PDO::PARAM_INT 或與列的資料類型相符的適當常數。
此外,在使用 bindValue 時,應使用第三個參數指定資料類型。這可確保資料庫正確處理該值。
以上是將 PDO bindParam 與常數一起使用時如何修復'無法透過引用傳遞參數”錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!