Как вытащить ссылки на картинки из HTML с помошью PHP
Есть задача, надо из HTML элемента вытащить ссылки на картинки. Есть например код:
<p><img align="left" alt="" src="images/stories/342_2121.jpg" /></p>
<p>Уважаемые покупатели!<br />
Мы рады представить Вам новую версию нашего сайта!</p>
Наша задача вытащить ссылку на картинку, и удалить данный HTML тег. Используем регулярные выражения:
$result = array(); // объявляем массив
preg_match_all('/<img[^>]*?src=\"(.*)\"/iU', $item->introtext, $result); // с помощью регулярного выражения из $item->introtext мы получаем массив путей $result
if (isset($result[1][0])) // если не пусто, то выводим картинку
{
$item->img = '<img src="'.$result[1][0].'" alt="'.$item->title.'" />';
}
Что бы удалить картинку из переменной $item->introtext используем следующее выражение:
$item->text = preg_replace( '/<img[^>]*>/', '', $item->text );
Как показал опыт, данное решение самое оптимальное. Работает уже на куче проектов