laravel 链式组合查询数据

我们写项目的时候经常用到组合查询,例如对于一篇博客,你想根据一个著作的著作类别,编著形式,研究类别进行查询。这个时候,我们就可以链式组合查询。前台给我们后台什么类型,我们就根据这个类型去执行sql语句。这样十分的灵活。
应用场景:
在这里插入图片描述
下面是我封装的链式组合查询代码:

//根据字段组合查询数据
    public static function combinationSelectDatas($condition_datas,$second_field = '',$second_datas = [],$third_field = '',$third_datas = []){
         $first_field = $condition_datas['first_field'];
         $first_datas = $condition_datas['first_datas'];
         $table_name  = $condition_datas['table_name'];
         $result = DB::table($table_name);
         if(!empty($first_datas)){
             $result = $result->whereIn($first_field,$first_datas);
         }
         if(!empty($second_datas)){
             $result = $result->whereIn($second_field,$second_datas);
         }
         if(!empty($third_datas)){
             $result = $result->whereIn($third_field,$third_datas);
         }
         $result = $result->paginate($condition_datas['total']);
         $time_field  = $condition_datas['time_field'];
         foreach ($result as $datas){
             $datas->$time_field = date('Y-m-d',$datas->$time_field/1000);
         }
         return responseTojson(0,'查询成功','',$result);
    }

这样写,我们就可以随心所欲,前台给我们什么,我们就组合查什么。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值