トラブルシューティング「パラメータ 2 を参照で渡せません」 PDO のbindParam エラー
PDO の bindingParam メソッドを使用してプリペアド ステートメントを実行しようとすると、バインドされるパラメータとして定数値を使用すると、エラーが発生する可能性があります。このエラーは、bindParam の動作方法に関する根本的な誤解から生じています。
bindParam は 2 番目のパラメータとして変数を想定しているため、後でステートメントに渡される値を変更できます。これは、変更できない定数値には適していません。この問題を解決するには、代わりに bindingValue メソッドを利用します。
例:
置換:
$stmt->bindParam(':v1', PDO::PARAM_NULL);
次:
$stmt->bindValue(':v1', null, PDO::PARAM_INT);
bindValue を使用すると、プレースホルダーに特定の値を明示的に指定できるため、参照が不要になります。これによりエラーが解決され、ステートメントが正しく実行できるようになります。
以上がPDO の「bindParam」が定数で失敗するのはなぜですか?「パラメータ 2 を参照で渡せません」エラーを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。