Как проверить, содержит ли строка подстроку
Короткий ответ
Функция str_contains() возвращает true, если подстрока найдена:
<?php
var_dump(str_contains('Hello, world', 'world'));Результат:
bool(true)Без учёта регистра
Поиск учитывает регистр. Чтобы его не учитывать, приведите обе строки к нижнему регистру функцией mb_strtolower():
<?php
$text = 'Hello, World';
var_dump(str_contains(mb_strtolower($text), mb_strtolower('WORLD')));Результат:
bool(true)Узнать позицию
Если нужно знать, где именно находится подстрока, используйте mb_strpos(). Она возвращает позицию или false:
<?php
var_dump(mb_strpos('Hello, world', 'world'));Результат:
int(7)Функции из этого ответа
- str_contains — Проверяет, содержит ли строка заданную подстроку.
- mb_strpos — Находит позицию первого вхождения подстроки.
- mb_strtoupper — Переводит строку в верхний регистр.