广告:宝塔Linux面板高效运维的服务器管理软件 点击【 https://www.bt.cn/p/uNLv1L 】立即购买
yii2中andWhere与andFilterWhere的区别
yii2中,经常会使用很多条件进行组合判断查询数据,所以就要明白andWhere和andFilterWhere的差异,以便灵活的使用。
#andWhere() //定义一个不为空的参数$name = 'lisi';$query = Model::find();$query->andWhere(['name'=>$name]);//生成的语句SELECT * FROM `table_name` WHERE `name`='lisi' //定义一个为空的参数$name = '';$query->andWhere(['name'=>$name]);//生成的语句SELECT * FROM `table_name` WHERE `name`='' #andFilterWhere //定义一个不为空的参数$name = 'lisi';$query = Model::find();$query->andFilterWhere(['name'=>$name]);//生成的语句SELECT * FROM `table_name` WHERE `name`='lisi' //定义一个为空的参数$name = '';$query->andFilterWhere(['name'=>$name]);//生成的语句SELECT * FROM `table_name`登录后复制
看代码应该就能看出差异了,andWhere 时,不管查询的条件参数是否为空,都会加上该条件。andFilterWhere 时,当条件参数为空时,则会自动过滤该条件。
推荐:《YII教程》
以上就是yii2中andWhere与andFilterWhere的区别的详细内容,更多请关注9543建站博客其它相关文章!
发表评论