laravel閉包函數查詢


1.如下圖代碼示例實現了多條件的模糊查詢並且如果沒有參數傳過來的時候返回全部的信息

 public function index(Request $request)
    {
            $data = Student::where(function ($query) use ($request) {
            $id = $request->input('id');
            $name = $request->input('name');
            $query->where('id', 'like', '%' . $id . '%')->where('sname', 'like', '%' . $name . '%');
        })->get()->toArray();
        return dd($data);
    }

2.Eloquent Orm多條件模糊查詢:

public function index(Request $request)
    {
        // return Excel::download(new StudentExport(), 'student.xlsx');
        $data = Student::where(function ($query) use ($request) {
            $name =!empty($request->get('name'))?$request->get('name'):'';
            $id =!empty($request->get('id'))?$request->get('id'):'';
            $ide =!empty($request->get('ide'))?$request->get('ide'):'';
            $query->where('sname', 'like', '%' . $name . '%');
            //$query->where('id','like','%'.$request->get('id').'%');
            if ($id!=$ide){
                $query->whereBetween('id',[$id,$ide] );
            }
            //$query->whereBetween('id', '<=', $ide);
        })->get()->toArray();
        return dd($data);
    }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM