В Laravel 8 методwhereLike предоставляет мощный способ выполнения фильтрации поиска на основе частичного совпадения строк. Этот метод позволяет искать записи, содержащие определенный шаблон в столбце. В этой статье мы рассмотрим различные методы эффективного использования методаwhereLike, сопровождаемые примерами кода.
Метод 1: базовое использование
$users = DB::table('users')
->where('name', 'like', '%John%')
->get();
Этот запрос получит все записи пользователей, в которых столбец «имя» содержит подстроку «Джон».
Метод 2: поиск без учета регистра
$users = DB::table('users')
->where('email', 'ilike', '%example.com')
->get();
Используя оператор ilike, этот запрос выполнит поиск без учета регистра записей пользователей, в которых столбец «email» заканчивается на «@example.com».
Метод 3: объединение нескольких условий
$users = DB::table('users')
->where('name', 'like', '%John%')
->orWhere('email', 'like', '%example.com')
->get();
Этот запрос извлекает записи пользователей, в которых столбец «имя» содержит подстроку «Джон», а столбец «электронная почта» содержит подстроку «@example.com».
Метод 4. Динамический поиск
$searchTerm = 'Doe';
$users = DB::table('users')
->where('name', 'like', '%' . $searchTerm . '%')
->get();
В этом примере поисковый запрос предоставляется динамически, что позволяет пользователям искать записи пользователей, содержащие указанную подстроку.
Метод 5: поиск по нескольким столбцам
$users = DB::table('users')
->where(function ($query) {
$query->where('name', 'like', '%John%')
->orWhere('email', 'like', '%example.com');
})
->get();
Этот запрос извлекает записи пользователей, в которых либо столбец «имя» содержит подстроку «Джон», либо столбец «электронная почта» содержит подстроку «@example.com».
МетодwhereLike в Laravel 8 предоставляет удобный способ выполнения фильтрации поиска на основе частичного совпадения строк. Используя этот метод, вы можете создать мощные функции поиска в своих приложениях Laravel. Мы рассмотрели несколько методов, включая базовое использование, поиск без учета регистра, объединение нескольких условий, динамический поиск и поиск по нескольким столбцам. Поэкспериментируйте с этими методами, чтобы улучшить возможности поиска в ваших проектах Laravel 8.