Задать вопрос
@red-web

Как найти в тексте и заменить значение по маске?

Есть вот такая строка
Здравствуйте [~iname~] мы знаем что ваша фамилия [~fname~], поэтому [~fname~] [~iname~] мы дарим вам подарок.

Есть такой массив
$arr['person']['iname']="Анатолий";
$arr['person']['fname']="Рожков";

Надо получить такую строку
Здравствуйте Анатолий мы знаем что ваша фамилия Рожков, поэтому Рожков Анатолий мы дарим вам подарок.
  • Вопрос задан
  • 82 просмотра
Подписаться 1 Средний 1 комментарий
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
0xD34F
@0xD34F
preg_replace_callback('#\[~(.*?)~\]#', fn($m) => $arr['person'][$m[1]], $str)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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