thinkphp5.0多条件模糊查询以及多条件查询带分页如何保留参数

1,多条件模糊查询 
等于:map[id]=array(eq,100);map[‘id′]=array(‘eq′,100);不等于:map[‘id’] = array(‘neq’,100); 
大于 :map[id]=array(gt,100);map[‘id′]=array(‘gt′,100);大于等于:map[‘id’]=array(‘egt’,100); 
小于:map[id]=array(lt,100);map[‘id′]=array(‘lt′,100);小于等于:map[‘id’]=array(‘elt’,100); 
模糊查询:map[name]=array(like,thinkphpbetween:map[‘name′]=array(‘like′,′thinkphpbetween:map[‘id’]=array(‘between’,’1,8’); 
map[id]=array(between,array(18)in:map[‘id′]=array(‘between′,array(‘1′,‘8′));in:map[‘id’]=array(‘id’,’1,2,,3’); 
map[id]=array(notin,1,2,3);map[‘id′]=array(‘notin′,′1,2,3′);data=db('user')->where($map)->select();


2多条件或查询 
例如 select * from tbl where a like ‘%123%’ or b like ‘%123%’ or c like ‘%123%’ ; 
实现这样的功能,thinkphp怎么写呢?

where[‘a’]=array(‘like’,”%123%”); 
where[‘b’]=array(‘like’,”%123%”); 
where[‘c’]=array(‘like’,”%123%”);

答案 :where[‘a|b|c’]=array(‘like’,”%123%”);


3多条件分页查询保留参数 
Db::name(“table”)->where(“XXXX”)->paginate(10,false,['query'=>request()->param()]); 
paginate方法的第三个参数

 

 

posted @ 2019-06-22 17:42  搬砖小伙子  阅读(836)  评论(0编辑  收藏  举报