bindparam() 和 bindvalue() 非常相似。唯一的区别就是前者使用一个 php 变量绑定参数, 而后者使用一个值。对于那些内存中的大数据块参数,处于性能的考虑,应优先使用前者。
根据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();
以上这篇bindparam和bindvalue的区别以及在yii2中的使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持硕编程。
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!