Что касается вашего примера запроса, вам нужно добавить %
к значению вместо оператора, чтобы он выглядел так:
WHERE foo LIKE ? OR foo LIKE ?
А затем передать значения как "%$var1%"
, "%$var2%"
и т. д.
Использование Laravels Query Builder
Убедитесь, что у вас есть все поисковые слова в массиве. Затем вы можете в конструкторе запросов Laravels (который, как вы упомянули, используете) сделать что-то вроде этого:
$searchWords = ['val1', 'val2', 'val3'];
// Now get the query builder and pass closure as the argument
$query = DB::table('some-table')
->where(function($query) use ($searchWords) {
// Iterate through the words and add them one by one
foreach ($searchWords as $word) {
$query->orWhere('field', 'LIKE', "%{$word}%");
}
});
$result = $query->get();