Я хочу найти по букве first_name клиента в моей таблице «клиенты».
And the only thing that I get is an empty array.
For instance, I put in the parameter 'q' value 'E' to get customer Elena from my database by I get an only empty array.
Я использую следующий код для получения first_name : $search = Input::get('q');
if ($search)
{
$customers = Customer::all()->where('full_name', 'LIKE', "%{$search}%");
return ($customers);
}
Can someone help me?






Попробуй это
$customers = Customer::where('full_name', 'LIKE', "%{$search}%")->get();
@Мариус рад, что это помогает. можешь пометить это как ответ :)
Ваш запрос не работает, потому что вы вызываете метод all() перед where(). На самом деле это не так, но у него другое поведение.
Когда вы вызываете all(), он фактически выполняет SQL-запрос. После этого любые связанные методы вызываются в класс Eloquent Collection, и у него также есть метод where, но это проще, поскольку он работает на PHO, а не на SQL.
Поскольку метод коллекции where() не поддерживает оператор LIKE, он, вероятно, ищет значение, которое точно равно %E%.
Надеюсь, это поможет вам понять, почему ваш запрос не работает должным образом.
Очень полезное объяснение.
Это сработало! благодарю вас !! но могу ли я узнать, почему мой вариант не сработал?