Вы можете авторизоваться через ВКонтакте, Фейсбук и оставить комментарий


Найти 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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<!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 и искать изображения.

1
2
3
4
5
6
7
8
9
<?php

$content 
file_get_contents('test.html');

preg_match_all('/<img[^>]+src="?\'?([^"\']+)"?\'?[^>]*>/i'$content$imagesPREG_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

Опубликовано: 12 декабря 2012  ·  Автор: Артём Фёдоров  ·  6518 просмотров

Категория

ГлавнаяПрограммированиеPHPРегулярные выраженияНайти img src (PHP)

Чтобы оставить комментарий нужно авторизоваться на сайте
или войти через ВКонтакте или Фейсбук

Войти через ФейсбукВойти через Твиттер

Комментарии

Регулярные выражения, PHP, Программирование

© 2010-2017 expange.ru
При полном или частичном копировании статей сайта, ссылка на источник обязательна.

Хотите узнать больше информации, пишите на: artem@expange.ru

Полезное онлайн  ·  Новости  ·  Изображения  ·  Статьи по датам

О проекте  ·  Правила пользования  ·  Представительства

Благодарности и пожелания