• 技术文章 >php框架 >YII

    yii2中andWhere与andFilterWhere的区别

    angryTomangryTom2019-11-26 17:17:24转载1207

    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的区别的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:CSDN,如有侵犯,请联系admin@php.cn删除
    专题推荐:yii andWhere andFilterWhere
    上一篇:YII2中andWhere如何多个or查询 下一篇:yii框架怎么连接数据库
    大前端线上培训班

    相关文章推荐

    • Yii2中如何使用indexBy()• yii框架如何使用表单• YII2中andWhere如何多个or查询

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网