Оберните все теги изображений в строке со ссылками

Попытка автоматически обернуть все теги изображений в поле, которое в настоящее время управляется с помощью CKEditor. Хотелось бы обработать все это с помощью PHP.

Таким образом, это будет пример случайного содержимого поля:

<p> Intro text here<br /> <img alt="sample desc" src="/images/example1.jpg" /> Long article text here... <img alt="sample desc" src="/images/example2.jpg" /> Short article text here... <img alt="sample desc" src="/images/example3.jpg" /> </p> 

И мне нужно будет изменить приведенный выше код на это, обернув каждый тег изображения ссылкой, используя уникальный идентификатор, href, соответствующий источнику и заголовку img, соответствующему тексту alt:

 <p> Intro text here<br /> <a id="image1" href="/images/example1.jpg" title="sample desc"> <img alt="sample desc" src="/images/example1.jpg" /> </a> Long article text here... <a id="image2" href="/images/example2.jpg" title="sample desc"> <img alt="sample desc" src="/images/example2.jpg" /> </a> Short article text here... <a id="image3" href="/images/example3.jpg" title="sample desc"> <img alt="sample desc" src="/images/example3.jpg" /> </a> </p> 

Спасибо за любую помощь, которую вы можете предоставить!

Related of "Оберните все теги изображений в строке со ссылками"

Если это произвольный HTML- код, который поступает из внешних источников, то это наиболее просто, например, путь запроса

 $html = htmlqp($html); foreach ($html->find("img") as $img) { $img->wrap("<a href='{$img->attr('src')}'></a>"); } print $html->top("p")->html(); 

Возможно, вы захотите ввести id= и title= аналогично в цикле, но это все.

Дайте id для p..lets say main_p, чтобы выбрать его … или вы можете выбрать любой другой селектор.

 $(document).ready(function() { var i=1; $("#main_p img").each(function(){ $(this).wrap('<a id=image'+i+++' href='+$(this).attr("src")+' title="sample desc"/>'); }) }); 

Это сделает то, какой код вы набрали второй.

Демо-версия