2015-11-03 152 views
3

我在Laravel 5個和現在用的是Orwhere clausule,我的代碼來諮詢的是:如何處理多Orwhere在Laravel

$estudiantes= Usuario:: 
     where('rol', '=', 'ESTUDIANTE') 
      ->whereHas('perfil', function($query) use ($data){ 
       if($data!="") 
        $query->Where('doc_identidad', '=' ,$data) 
         ->orWhere('nombres','like','%'.$data.'%') 
         ->orWhere('apellidos','like','%'.$data.'%'); 
       dd($query); 
      })->get(); 

所以,我想每一個Usuario過濾與ROL ESTUDIANTE,工作得非常細,然後我要濾除這些都doc_identidadnombresapellidos就像你看到的,我有一個dd($query)來見T查詢樹,我注意到第其中使用而不是。這是樹:enter image description here

所以,我的下一個: where1和where2或where3或where4

,我想: where1和(where2或where3或where4) 所以,我應該怎麼辦它?謝謝!

回答

2

where1(α= 1)和(where2(B = 1)或where3(C = 1)或where4(d = 1))

Model::where(function ($query) { 
    $query->where('a', '=', 1); 
})->where(function ($query) { 
    $query->where('b', '=', 1) 
      ->orWhere('c', '=', 1) 
      ->orWhere('d', '=', 1); 
}); 
+0

嗨,這幾乎我有同樣的事情,除了我有我真正需要的地方。謝謝 –