laravel8 使用when搜索

//后端 html表单

<form action="{{route('index')}}">
    <input type="text" name="men" placeholder="人数">
    <input type="text" name="abnormal" placeholder="异常人数">
    <input type="text" name="mentwo" placeholder="人数2">
    <input type="date" name="created_at" >
    <input type="date" name="updated_at">
    <input type="submit">
</form>

//接收数据
 public function index(Request $request)
    {
        $men = $request->input('men');
        $abnormal = $request->input('abnormal');
        $mentwo = $request->input('mentwo');
        $created_at = $request->input('created_at');
        $updated_at = $request->input('updated_at');
    //定义空数组
        $append= [];
        $data = Statistics::when($men, function ($query) use ($men, $append) {
                $append[] = ['men', $men];
                return $query->where('men', 'like', "%$men%");
            })
            ->when($abnormal, function ($query) use ($abnormal,$append) {
                $append[] = ['abnormal',$abnormal];
                return $query->where('abnormal', 'like', "%$abnormal%");
            })
            ->when($mentwo, function ($query) use ($mentwo, $append) {
                $append[] = ['$mentwo', $mentwo];
                return $query->where('mentwo', 'like', "%$mentwo%");
            })
            ->when($created_at, function ($query) use ($created_at, $updated_at, $append{
                $append[] = ['created_at', $created_at];
                $append[] = ['updated_at', $updated_at];
                return $query->whereDate('created_at', '>=', "$created_at")
                    ->whereDate('updated_at', '<=', "$updated_at");
            })
            ->get();
        //返回页面
        return view('index.index',compact('data'));
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值