私は意味のために...PHP PDO :: bindParam()データ型..どのように動作しますか?
bindParam()
(またはbindValue()
)でのデータ型の宣言が使用されているものを思ったんだけど、私は整数の引数(PDO::PARAM_INT
)を定義した場合、引数を変換しなければならないと思いました
$delete->bindParam(1, $kill, PDO::PARAM_INT);
// should work like
$delete->bindParam(1, (int)$kill);
のようなものです。引数が宣言された型でない場合は、少なくともエラーをスローします。しかし、そうではありません。周りグーグル
、私はphp.netアーカイブにことがわかった:
こんにちはすべて、
私は現在、PDOに取り組んでいます。 bindParam()関数のまさに です。第3の パラメータのdata_typeはここにあるようです 値のタイプを強制的にしますか?しかし 、私は試してみてください。
$sql = "INSERT INTO produit (idproduit, nom, marque) VALUES (NULL, :nom, :marque)"; $stmt = $dbh->prepare($sql); $nom = 'Testarossa'; $marque = 'Ferrari' ; $stmt->BindValue(':marque',$marque) ; $stmt->BindParam(':nom',$nom,PDO::PARAM_INT) ; $stmt->execute(); $nom = '250 GTO' ; $stmt->execute(); ?>
は、私はPHP エラーや私のデータベース内intergerのいずれかを持っている期待していました。 しかし、私は持っている私のDBに:
22・テスタロッサフェラーリ23 250 GTO フェラーリ
それは私が三番目のパラメータを持っているか、いない 場合、それは変化しなかったことを意味します。または おそらく私は何かが恋しい。誰かが 私をより多くトールできますか?または誰かが 私に情報を見つけることができる場所に教えてください 。まさに私の状況です
よろしく、
Cyruss
。私の考えはどこが間違っていますか?
"私のデータベースにはPHPエラーかintergerがあるはずです。"私も – VolkerK