Почему может не работать 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;


Разъясните, мне, тупому, почему обратно не конвертируются и как сделать кликабельными тогда ссылки?
  • Вопрос задан
  • 169 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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