Часто мы хотим знать, как искать текст в другом тексте в Laravel, то есть хотим знать, содержится ли текст в другом тексте в Laravel. В PHP есть метод str_contains:
if (str_contains("Текст большой", "Large")) {
echo 'Строка "Large" была найдена в строке';
} еще {
echo '"Большой" не был найден, потому что регистр не совпадает";
}
Хотя в Laravel, как вы уже знаете, есть специальный набор помощников для более простого использования текста в стиле Laravel; давайте вспомним, что у нас есть два способа использования фасадов:
$содержит = Str::содержит("Текст большой", "Большой");
Приведенный выше код возвращает значение True, поскольку текст «Большой» содержится в тексте «Текст большой»
Наиболее рекомендуемый способ — использовать функции справки:
$содержит = str("Текст большой")->содержит("большой");
Чтобы использовать любой из вспомогательных методов работы со строками, сначала нужно создать оболочку, для чего и предназначена функция str(). После этого мы можем использовать любой из вспомогательных методов, например contains(), который работает так же, как и его версия для фасада.
Проверка несколькими словами
Мы также можем проверить, содержит ли строка несколько слов или подстрок. Например:
$contains = Str::contains($myString, ['desarrollolibre.net', 'другой текст']);
Вы можете использовать эти методы, чтобы проверить, содержит ли строка определённое слово в Laravel 6, Laravel 7, Laravel 8, Laravel 9, Laravel 10 и Laravel 11.
How to check if a string contains a specific word in Laravel using the Str::contains() function.