@nevesomostjke

Как мне найти слово в строке?

Здравствуйте. Вот уже идет 3 час. Я пытаюсь выполнить простейшую задачу, найти слово из массива в строке.
Вот искомые значения в моем массиве:
key1, key2, key3, key4

Задача простая. Перебрать массив искомых значений, если слово в строке найдено вернуть true.
Я использовал strpos, mb_strpos, substr_count, mbibibstrororprorros...

если строка выглядит так: bla key1 bla bla получаю true
если строка выглядит так: key1 bla не получаю true

Простым языком, не видит первое слово.

Я читал про подстроки, про использование ===... ничего не получается.
Пожалуйста, объясните мне простым языком почему это не срабатывает и желательно, нормальный простой рабочий пример
Спасибо
  • Вопрос задан
  • 55 просмотров
Решения вопроса 1
nokimaro
@nokimaro
Меня невозможно остановить, если я смогу начать.
<?php
$words = ['key1', 'key2', 'key3', 'key4'];

$str = 'key1 bla';

foreach($words as $word) {
    if(strpos($str, $word) !== false) {
        echo "{$word} найдено в {$str}\n";
    }
}


в php8 можно использовать str_contains()

проверить наличие подстроки в строке можно функциями
strpos()
stripos()
strstr()
stristr()
str_contains()
preg_match()
и даже прости хоспади explode()
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы