Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Вывод тегов после preg_replace
Форумы портала PHP.SU » PHP » Регулярные выражения » Вывод тегов после preg_replace

Страниц (1): [1]
 

1. J2ME - 03 Октября, 2017 - 16:20:56 - перейти к сообщению
Всем привет!

Подскажите, в чем проблема. Необходимо было сделать активными ссылки в тексте из БД.

После
$value = preg_replace("#(https?|ftp)://\S+[^\s.,> )\];'\"!?]#",'<a href="\\0">\\0</a>',$value);

все ссылки выводятся текстом по типу:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <a href="http://адрес/">http://адрес/</a>


В исходном коде
Цитата:
&lt;a href=&quot;http://адрес/&quot;&gt;http://адрес/&lt;/a&gt;


То есть заменяются кавычки и скобки тегов <>
2. Строитель - 03 Октября, 2017 - 19:06:02 - перейти к сообщению
J2ME
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $string = 'Текст и ссылка http://forum.php.su/topic.php?forum=4&topic=2795&v=l#1507036856 и ещё текст';
  4.  
  5. $pattern = '~(?:https?|ftp)://\S+~';
  6. $replace = '<a href="$0">$0</a>';
  7.  
  8. echo preg_replace($pattern, $replace, $string);
3. MouseZver - 04 Октября, 2017 - 12:59:09 - перейти к сообщению
http://php.net/manual/ru/functio...ntity-decode.php

регулярки последнее дело
4. J2ME - 04 Октября, 2017 - 15:49:40 - перейти к сообщению
Проблема оказалась в экранировании в twig.
Всем спасибо.

 

Powered by ExBB FM 1.0 RC1