入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

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

创建时间:2017-06-28 投稿人: 浏览次数:1627

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();
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。