关于 between 问题?

做的功能是后台用户列表,带筛选,分页后也保留筛选的参数

我是判断有没有 筛选参数 ,如果有的话给$where['xx'] = 'xx' 加参数,

有一个日期的区间查询 需要用到 between

$start = '开始时间';
$end = '结束时间';
$map['time'] = array('between' , array($start , $end));

这样不好使。

file
这样不行, 因为我的查询语句就用一个where数组做条件

或者你们有什么别的方式实现我的需求?

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
leo
最佳答案

用查询构造器逐个添加查询条件,不需要用一个数组

$builder = User::query();
if (xxx) {
  $budiler->whereBetween('xxx', [xx, xxx]);
}
$result = $builder->paginate(xxx);
5年前 评论
讨论数量: 2
leo

用查询构造器逐个添加查询条件,不需要用一个数组

$builder = User::query();
if (xxx) {
  $budiler->whereBetween('xxx', [xx, xxx]);
}
$result = $builder->paginate(xxx);
5年前 评论

file
我现在这样的写法不支持分页带参数(我知道需要把获得的筛选参数在通过 compact 传回视图),
原因是因为我不知道怎么把 时间区间 拼接到$where里,
请教一下如何改进一下, 才可以 一条sql达到需求?

5年前 评论
leo

用查询构造器逐个添加查询条件,不需要用一个数组

$builder = User::query();
if (xxx) {
  $budiler->whereBetween('xxx', [xx, xxx]);
}
$result = $builder->paginate(xxx);
5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!