84669 orang belajar
152542 orang belajar
20005 orang belajar
5487 orang belajar
7821 orang belajar
359900 orang belajar
3350 orang belajar
180660 orang belajar
48569 orang belajar
18603 orang belajar
40936 orang belajar
1549 orang belajar
1183 orang belajar
32909 orang belajar
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的话: