当前位置:首页 > PHP教程 > php应用 > 列表

bindParam和bindValue的区别以及在Yii2中的使用详解

发布:smiling 来源: PHP粉丝网  添加日期:2021-09-04 23:35:01 浏览: 评论:0 

下面小编就为大家分享一篇bindParam和bindValue的区别以及在Yii2中的使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧。

bindParam() 和 bindValue() 非常相似,唯一的区别就是前者使用一个 PHP 变量绑定参数, 而后者使用一个值,对于那些内存中的大数据块参数,处于性能的考虑,应优先使用前者。

根据id查询一条数据,并对id进行过滤:

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

更新一条数据:

  1. $id = 1; 
  2. $name = 'xiaoming'
  3. $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(); 

以下写法在会报错

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

Tags: bindParam bindValue Yii2

分享到: