zoukankan      html  css  js  c++  java
  • laravel 多条件查询


    $cases = DB::table('cases')->where('cid',$cid)->when($condition,function($query) use($condition){
    return $query->where(function($query) use($condition){
    $query->orwhere('title','like','%'.$condition.'%')->orwhere('style','like','%'.$condition.'%')->orwhere('address','like','%'.$condition.'%');
    });
    })->when($default,function($query) use($default){
    return $query->where(function($query) use($default){
    $query->where('style','like','%'.$default.'%');
    });
    })->when($time == 1,function($query){
    return $query->orderBy('addtime','desc');
    })->when($time == 0,function($query){
    return $query->orderBy('addtime','asc');
    })->when($hot == 1,function($query){
    return $query->orderBy('hot','desc');
    })->when($hot == 0,function($query){
    return $query->orderBy('hot','asc');
    })->when($minarea > 0 && $maxarea > 0,function($query) use($minarea,$maxarea){
    return $query->wherebetween('area',[$minarea,$maxarea]);
    })->when($minarea > 0 && $maxarea == 0,function($query) use($minarea){
    return $query->where('area','>=',$minarea);
    })->when($minarea == 0 && $maxarea > 0,function($query) use($maxarea){
    return $query->where('area','<=',$maxarea);
    })
    ->orderBy('sort','desc')->paginate($pageSize,['*'],'page',$pageNo);

           // dd( DB::getQueryLog());
    foreach ($cases as $k => $v) {
    $cases[$k]->photo = $this->upload.$v->photo;
    // if ($v->panorama && empty($v->url)) {
    // $cases[$k]->url = 'http://www.homeeyes.cn/app/3DShow/index.html?type=1&case_id='.$v->id;
    // }
    // $cases[$k]->author = DB::table('admin_users')->where('id',$v->uid)->select('name','avatar')->first();
    // if ($cases[$k]->author) {
    // $cases[$k]->author->avatar = $this->upload.$cases[$k]->author->avatar;
    // }
    }
    return response()->json(['error'=>0,'data'=>$cases]);
  • 相关阅读:
    FP-growth算法思想和其python实现
    HDInsight Command
    OpsMgr Connector 20070
    Exchange: How to get Mailbox size in Exchange Shell?
    Get members for ‘Dynamic Distribution Group’
    Hadoop 学习之路-开篇
    Office365 配置完成ADFS之后修改密码之后需要删除登陆信息
    添加只读访问权限到邮箱里的所有文件夹
    使用 Windows PowerShell 连接到 Lync Online
    windows 7无法打补丁
  • 原文地址:https://www.cnblogs.com/vinzen/p/10517246.html
Copyright © 2011-2022 走看看