PDO の「bindParam」が定数で失敗するのはなぜですか?「パラメータ 2 を参照で渡せません」エラーを修正するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-11-19 05:39:02
オリジナル
317 人が閲覧しました

Why Does PDO's `bindParam` Fail with Constants and How Can I Fix the

トラブルシューティング「パラメータ 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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート