Задать вопрос
@hdtor

Почему не работает замена?

Всем привет.

Есть такой код:

$search = "є"; //Нужно это заменить
$replace = "есть"; //На это

$string = "Какой-то є текст"; //В этом тексте

echo preg_replace('/(\b)'.$search.'(\b)/i','$1' . $replace .'$2', $string);


Но в итоге, почему-то не работает. С русским буквами все ок, а вот с украинскими такая беда? Как пофиксить?
  • Вопрос задан
  • 182 просмотра
Подписаться 1 Оценить 1 комментарий
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
tkutru
@tkutru
A programming cat.
А ларчик просто открывался!
echo preg_replace('/(\b)'.$search.'(\b)/ui','$1' . $replace .'$2', $string);

Все дело в модификаторе u
php.net/manual/ru/reference.pcre.pattern.modifiers.php см. PCRE_UTF8
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы