首先接收到传递过来的参数,然后进行条件判断,如果有值就追加进数组,没有值就跳过,执行下面的代码,最后直接查询即可。
public function index(){$start = input(\'start\'); // 获取开始时间$end = input(\'end\'); // 获取结束时间$inquiry = input(\'inquiry\'); // 方式$status = input(\'status\'); // 状态$where = []; // 定义一个数组/** 判断是否有值 有的话就追加进数组* */if($start != \'\' || $start != null) array_push($where,[\'start\', \'>=\',strtotime($start)]);if($end != \'\' || $end != null) array_push($where,[\'end\',\'<=\',strtotime($end)]);if($inquiry != \'\' || $inquiry != null) array_push($where,[\'inquiry\',\'=\',$inquiry]);if($status != \'\' || $status != null) array_push($where,[\'status\',\'=\',$status]);// 通过条件查询$list = Db::name(\'table\')->where($where)->paginate(15);// 把分页数据赋值给模板变量list$this->assign(\'list\', $list);// 渲染模板输出return $this->fetch();}