定数を含むプリペアド ステートメントを利用すると、「パラメーター 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 を使用する場合は、3 番目の引数を使用してデータ型を指定する必要があります。これにより、データベースが値を正しく処理できるようになります。
以上がPDO bindingParam を定数とともに使用するときに発生する「参照によってパラメーターを渡すことはできません」エラーを修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。