原理很简单,第一步:判断接收的值,第二步:写查询语句。具体实现以下:laravel
//首先,建立句柄: segmentfault
$handle = DB::table('classrooms');spa
//判断接收的值是否为空 $keywords1
&& $handle->where('field_name','like','%' . $keywords1 . '%');
$keywords1
$keywords1
$handle->where('field_name','like','%' . $keywords1 . '%');也能够写成:if($keywords1){
$keywords1){
// 判断接收的值是否为空 $keywords2 && $handle->where('field_name','like','%' . $keywords2 . '%'); ... // 获取数据 $handle->get();
代码能够精简以下:
$handle = DB::table('classrooms');
$keys = $request->all();
foreach($keys as $key => $val){
$keys[$key] && $handle->where($key,'like','%' . $val . '%');
}
// 获取数据
$datas = $handle->get();摘自:https://segmentfault.com/q/1010000007556256?_ea=1386542