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

Почему может не работать htmlspecialchars_decode?

Ситуация такая:
Пишу свою систему тикетов для ЛК юзера. Принимаю текст сообщения от юзера,
преобразую вставленные ссылки в кликабельные и далее конвертирую html-теги в HTML сущности.
$text = preg_replace("/\b((http(s?):\/\/)|(www\.))([\w\.]+)([\/\w+\.]+)([\?\w+\.\=]+)([\&\w+\.\=]+)\b/i", "<a href=\"http$3://$4$5$6$7$8\" target=\"_blank\">$2$4$5$6$7$8</a>", $text);
$text = htmlspecialchars($text);

данные попадают в mysql БД

Когда в цикле вывожу сообщения, то прежде чем распечатать переменную $text я ее обрабатываю функцией htmlspecialchars_decode();
но к сожалению, открыв исходный код страницы со списком сообщений вижу:
&lt;a href=&quot;https://vk.com/&quot; target=&quot;_blank&quot;&gt;https://vk.com/&lt;/a&gt;


Разъясните, мне, тупому, почему обратно не конвертируются и как сделать кликабельными тогда ссылки?
  • Вопрос задан
  • 175 просмотров
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ваш ответ на вопрос

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

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