这次给大家带来bindparam和bindvalue在yii2中的使用详解,bindparam和bindvalue在yii2中使用的注意事项有哪些,下面就是实战案例,一起来看一下。
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();
相信看了本文案例你已经掌握了方法,更多精彩请关注其它相关文章!
推荐阅读:
php保留键值+合并数组详解
怎么剔除二维数组中的重复的值
以上就是bindparam和bindvalue在yii2中的使用详解的详细内容。