PHP

Найти img src (PHP)

Найти все изображения (атрибут src у тега <img>) в тексте, можно при помощи регулярного выражения и функции int preg_match_all ( string $pattern , string $subject [, array &$matches [, int $flags = PREG_PATTERN_ORDER [, int $offset = 0 ]]] ).

Например у нас есть файл test.html и нужно найти все атрибуты src у изображений.
test.html
<!DOCTYPE HTML><html><head><meta charset="utf-8"><title>Вырезаем изображения</title></head><body>

<img src="http://expange.ru/images/1/1/207-130px.jpg" alt="Литр свежевыжатого апельсинового сока">
<img src="http://expange.ru/images/1/1/204-130px.jpg" alt="Соковыжималка">
<img src="http://expange.ru/images/1/1/206-130px.jpg" alt="Выжимаем сок">
<img src="http://expange.ru/images/1/1/208-130px.jpg" alt="Апельсиновый сок">
<img src="http://expange.ru/images/1/1/196-130px.gif" alt="Закрашенный круг">
<img src='http://expange.ru/images/1/1/198-130px.gif' alt="Векторный круг в выделение">
<img src='http://expange.ru/images/1/1/200-130px.gif' alt="Параметры наложения (Blending options)">
<img src='http://expange.ru/images/1/1/202-130px.gif' alt="Круг с рамкой (PhotoShop)">
<img src='http://expange.ru/images/1/1/195-130px.gif' alt="Фотошоп. Как нарисовать круг.">
<img src="http://expange.ru/images/1/1/197-130px.gif" alt="Векторный круг (PhotoShop)">
<img src="http://expange.ru/images/1/1/199-130px.gif" alt="Закрашиваем выделенную область">
<img src="http://expange.ru/images/1/1/201-130px.gif" alt="Свойства слоя (PhotoShop)">
<img src="http://expange.ru/images/1/1/193-130px.gif" alt="Нарисовать линию в фотошопе">
<img src="http://expange.ru/images/1/1/194-130px.gif" alt="Как нарисовать линию (PhotoShop)">
<img src="http://expange.ru/images/1/1/189-130px.gif" alt="Многоуровневое выпадающее меню (JavaScript)">
<img src='http://expange.ru/images/1/1/188-130px.gif' alt="Выпадающее меню (JavaScript)">
<img src='http://expange.ru/images/1/1/190-130px.gif' alt="Drop Down Menu (JavaScript)">
<img src='http://expange.ru/images/1/1/185-130px.png' alt="Гаечный ключ → Параметры (Google Chrome)">
<img src='http://expange.ru/images/1/1/178-130px.png' alt="Параметры безопасности. Включение JavaScript.">
<img src='http://expange.ru/images/1/1/187-130px.png' alt="Настройки содержания">

</body></html>

preg_image.php

Скрипт preg_image.php будет брать текст файла test.html и искать изображения.
<?php

$content = file_get_contents('test.html');

preg_match_all('/<img[^>]+src="?\'?([^"\']+)"?\'?[^>]*>/i', $content, $images, PREG_SET_ORDER);

foreach ($images as $image) {
    echo $image[1] . '<br>';
}

Результат

В результате выполнения скрипта preg_images.php, на экран будет выдан следующий результат:
http://expange.ru/images/1/1/207-130px.jpg
http://expange.ru/images/1/1/204-130px.jpg
http://expange.ru/images/1/1/206-130px.jpg
http://expange.ru/images/1/1/208-130px.jpg
http://expange.ru/images/1/1/196-130px.gif
http://expange.ru/images/1/1/198-130px.gif
http://expange.ru/images/1/1/200-130px.gif
http://expange.ru/images/1/1/202-130px.gif
http://expange.ru/images/1/1/195-130px.gif
http://expange.ru/images/1/1/197-130px.gif
http://expange.ru/images/1/1/199-130px.gif
http://expange.ru/images/1/1/201-130px.gif
http://expange.ru/images/1/1/193-130px.gif
http://expange.ru/images/1/1/194-130px.gif
http://expange.ru/images/1/1/189-130px.gif
http://expange.ru/images/1/1/188-130px.gif
http://expange.ru/images/1/1/190-130px.gif
http://expange.ru/images/1/1/185-130px.png
http://expange.ru/images/1/1/178-130px.png
http://expange.ru/images/1/1/187-130px.png
Добавлено: 21 Августа 2013 09:04:50 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...