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

Как сделать замену токенов в строке по ключам из массива?

$array = array('user'=>'Петя','time'=>'45','what'=>'Хорошо');
$message = '[user] любит прыгать на батуте [time] минут.  Это очень [what]';


Как получить текст?:
Петя любит прыгать на батуте 45 минут. Это очень Хорошо

Надо ob_start(); и ob_end_flush(); использовать?
  • Вопрос задан
  • 137 просмотров
Подписаться 1 Простой 4 комментария
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
0xD34F
@0xD34F
echo preg_replace_callback('~\[(.+?)\]~', fn($m) => $array[$m[1]] ?? $m[0], $message);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽