2017-11-03 1 views

Antwort

0
$result = DB::table('users') 
      ->where('name', 'LIKE', '%'.$search_value.'%') 
      ->where('status', 'locked') 
      ->get(); 
0

So etwas wie dies tun würde, den Trick:

$result = DB::table('users') 
      ->where('column', 'LIKE', '%'.$search_value.'%') 
      ->where('status', 'locked') 
      ->get(); 

Spalte ist die Spalte von Tabelle Benutzern Anschließend werden Sie von der Suche auf und $search_value wären das gegebene Eingabestring in dieser Spalte zu suchen zum.


Wenn Sie also beispielsweise für Namen suchen, die es enthält testen wird wie folgt aussehen:

$search_value = "test"; 
$result = DB::table('users') 
      ->where('name', 'LIKE', '%'.$search_value.'%') 
      ->where('status', 'locked') 
      ->get(); 
0

Wenn Sie durch die zurückgegebene Sammlung suchen, Sie eloquent Sammlungen Filtermethode verwenden können. siehe https://laravel.com/docs/5.5/collections#method-filter

Zum Beispiel:

$searchResults = $result->filter(function($r) 
     { 
     return $r->variablename == value; //replace variablenae & value with your own 
     }); 
    } 
0

I jarektkaczyk/eloquence Paketsuche empfehlen, ich bin sicher, es ist langsamer als aber es ist kostenlos zu benutzen.

0

Sie können einfach % hinzufügen, wenn Sie Wert suchen möchten enthält, andernfalls entfernen %. Überprüfen Sie diesen Code:

public static function getUserLocked() { 

    $result=DB::table('users')->where('status', 'LIKE', '%locked%')->get();    
    return $result; 

} 

Alles, was hat 'gesperrt' Wort wird ausgewählt werden.