ThinkPHP组合查询AND和OR一起用
来源:原创
时间:2016-07-22
作者:脚本小站
分类:PHP
如下示例:
$_where 和 $where组合查询
$_where之间用OR
$where之间用AND
$condition = I('post.condition');
switch($condition){
case 1:
$where['t.digest'] = array('gt',0);
break;
case 2:
$where['t.displayorder'] = 4;
break;
case 3:
$where['t.type'] = 1;
break;
default:
$_where['t.type'] = 1;
$_where['t.displayorder']= 4;
$_where['t.digest'] = array('gt',0);
$_where['_logic'] = 'or';
$where['_complex'] = $_where;
}
// 板块筛选
if($_POST['fid']){
$where['t.fid'] = I('post.fid');
}
// 时间筛选
if($_POST['start_time'] and $_POST['end_time']){
$where['t.add_time'] = array(
array('egt',strtotime(I('post.start_time'))),
array('elt',strtotime(I('post.end_time')))
);
}else{
if($_POST['start_time']){
$where['t.add_time'] = array('egt',strtotime(I('post.start_time')));
}else if($_POST['end_time']){
$where['t.add_time'] = array('elt',strtotime(I('post.end_time')));
}
}