Подтвердить что ты не робот

Написание регулярного выражения в PHP для обертывания <img> с помощью

Я хочу сделать так, чтобы всякое появление изображения обернулось ссылкой на источник изображения

Как я могу написать шаблон в PHP, чтобы я мог найти эти варианты, которые разбросаны по всему тексту, поступающему из базы данных:

<img src='/dir/dir2/image1.jpg' alt='blah blah blah'>
<img src="/dir/dir2/image2.jpg" alt="blah blah blah" />
<img src="/dir/dir2/image3.jpg" />

Во всех случаях я хочу, чтобы они отображались в пределах ссылки.

4b9b3361

Ответ 1

preg_replace("{<img\\s*(.*?)src=('.*?'|\".*?\"|[^\\s]+)(.*?)\\s*/?>}ims", '<a href=$2><img $1src=$2 $3/></a>', $str)

обрабатывает все не практические случаи

alt text

Ответ 3

Могу ли я рекомендовать использовать jQuery и использовать этот фрагмент вместо этого, это должно быть проще (и мы все любим jQuery для перебора любой проблемы ;])

$('img').wrap( function(){ return '<a href="' + this.src + '"></a>'; });

или это

$('img').wrap( function(){ return '<a href="' + $(this).attr('src') + '"></a>'; });

В любом случае, веселое время для использования, используя jQuery для управления клиентами DOM;)