解决bindParam中的“无法通过引用传递参数”错误
当使用带有常量值(如null或空字符串)的bindParam时,您可以遇到这个令人困惑的错误。罪魁祸首在于bindParam和bindValue之间的根本区别。
bindParam与bindValue
bindParam期望通过引用传递变量参数,而bindValue直接赋值给占位符。在使用常量值时,这种区别变得至关重要。
解决方案:使用bindValue
要解决该错误,请将bindParam 替换为bindValue。对于 null 值,请使用以下语法:
$stmt->bindValue(':param', null, PDO::PARAM_INT);
注意:
尝试使用带有 PDO::PARAM_NULL 的 bindParam 绑定 null 值可能不适用于所有情况用户。事实证明,bindValue 是一个更可靠的解决方案。
以上是为什么 PDO 中的常量值'bindParam”失败,如何修复?的详细内容。更多信息请关注PHP中文网其他相关文章!