84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
laravel怎么实现多条件模糊查询,而且前端选择查询的选项可以为空!例如我这里有个商品表,然后搜索的选项有商品名称商品价格商品产地和商品上下架,这些查询条件可以全不为空,但是也所以为空,例如我查找价格为100块已经上架的商品,其他两个搜索选项为空,有或者我只查询上架的商品,其他选项为空!
小伙看你根骨奇佳,潜力无限,来学PHP伐。
$handle = DB::table('table_name'); // 如果条件1为真的时候 $keywords1 && $handle->where('field_name','like','%' . $keywords1 . '%'); // 如果条件2为真的时候 $keywords2 && $handle->where('field_name','like','%' . $keywords2 . '%'); // 如果条件3为真的时候 ... // 获取数据 $handle->get();
如果是ORM的话:
$handle = new Model(); // 如果条件1为真的时候 $keywords1 && $handle->where('field_name','like','%' . $keywords1 . '%'); // 如果条件2为真的时候 $keywords2 && $handle->where('field_name','like','%' . $keywords2 . '%'); // 如果条件3为真的时候 ... 一样的
//画蛇添足下 $handle = \DB::table('table_name'); $where = '1=1 '; if($condition1) { $where.= ' and field_name like "%' . $keywords1 . '%"'; } elseif($condition2) { $where.= ' and field_name like "%' . $keywords2 . '%"'; } $res = $handle->whereRaw($where)->get();
如果是ORM的话: