ホームページ  >  記事  >  バックエンド開発  >  bindParamとbindValueの違いの詳しい説明

bindParamとbindValueの違いの詳しい説明

小云云
小云云オリジナル
2018-03-14 09:30:182171ブラウズ

bindParam() と bindingValue() は非常に似ています。唯一の違いは、前者はパラメータのバインドに PHP 変数を使用するのに対し、後者は値を使用することです。メモリ内に大きなデータ ブロックを持つパラメータの場合、パフォーマンス上の理由から、前者を最初に使用する必要があります。この記事では主に、bindParam と bindingValue の違いと、Yii2 でのそれらの使用法について詳しく説明します。これは参考になるものであり、皆さんのお役に立てれば幸いです。編集者をフォローして見てみましょう。皆さんのお役に立てれば幸いです。

ID に基づいてデータの一部をクエリし、ID をフィルターします:

$id = 1;
$result = Yii::$app->db->createCommand("select * from product where id=:id")->bindParam(":id",$id,\PDO::PARAM_INT)->queryAll();
$result = Yii::$app->db->createCommand("select * from product where id=:id")->bindParam(":id",$id,\PDO::PARAM_STR)->queryAll();

データの一部を更新します:

$id = 1;
$name = 'xiaoming';
$result = Yii::$app->db->createCommand("update product set name=:name where id=:id")->
bindParam(':id',$id,\PDO::PARAM_INT)->bindParam(':name',$name,\PDO::PARAM_INT)->execute();

次の書き方ではエラーが報告されます

$result = Yii::$app->db->createCommand()->delete('product',
['name'=>':value'],'id=:id')->bindValue(':id',1,\PDO::PARAM_INT)->
bindParam(':value',$user,\PDO::PARAM_INT)->execute();

関連する推奨事項:

php pdo PDOStatementクラスのbindParamメソッドとbindValueメソッドの違い

以上がbindParamとbindValueの違いの詳しい説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。