2015-06-08 14 views
14

Der Titel sagt alles.Laravel -> wo ('id', ARRAY). mehrere, wo Bedingungen laravel 4

ich, dass ich das tun kann:

DB:table('items')->where('something', 'value')->get() 

Aber was ich will, wie so den in den Zustand für mehrere Werte überprüfen:

DB:table('items')->where('something', 'array_of_value')->get() 

Gibt es eine einfache Möglichkeit, dies zu tun?

+0

wenn du glücklich bist Mit meiner Antwort unten kannst du es akzeptieren :) –

Antwort

40

dort ist whereIn():

$items = DB::table('items')->whereIn('id', [1, 2, 3])->get(); 
0

Sie müssen mehrere verwenden where ruft

DB:table('table')->where('column', 'operator', 'value') 
    ->where('column', 'operator', 'value') 
    ->where('column', 'operator', 'value') 
    ->get(); 

Dieser AND Operator verwenden. Wenn Sie OR benötigen, können Sie orWhere Methode verwenden.

Für fortgeschrittene where Aussagen

DB::table('table') 
    ->where('column', 'operator', 'value') 
    ->orWhere(function($query) 
    { 
     $query->where('column', 'operator', 'value') 
      ->where('column', 'operator', 'value'); 
    }) 
    ->get(); 

und wenn Sie WHERE column IN verwenden nedd können Sie

DB:table('table')->where('something', 'operator', 'value') 
    ->whereIn('column', [value, value, value]) 
    ->get() 
1

verwenden Wenn Sie mit mehreren params benötigen:

DB:table('table')->whereIn('id', $ids)->where('status', 1)->get();