Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Задать переменной путь для строки из html кода
 
 автор: pautina   (13.01.2012 в 09:10)   письмо автору
 
 

Здравствуйте Уважаемое сообщество.
Мне нужно из строки html кода, из тегов рисунков записать переменную пути
Для этого использую скрипт

<?php 
 $str 
'<div class="Text">                    
<div id="demotip">&nbsp;</div>  
<div class="Gadget2"><div class="Gadget2SmoothTopLine"><div class="Gadget2SmoothTopLeft"><div class="Gadget2SmoothTopRight">&nbsp;<img src="images/content-smooth-top-right.gif"></div></div></div><div class="Gadget2Content"><div class="Gadget2ContentLeft"><div class="Gadget2ContentRight"><!-- Content --><div class="TextInside">        
<br />        <a id="printPage" href="http://www.photoshop-master.ru/lessons.php?rub=3&id=1055"><img src="/img/print.png" alt="распечатать" /></a>
<p><strong><a href="/lessons.php">Уроки Photoshop</a></strong> &#187; <strong><a href="/lessons.php?rub=1">Рубрика: Эффекты</a></strong></p><br />

<h1 style="text-align:center">Создаём абстрактное золотое кольцо в Фотошоп</h1><p align="left">
    В этом уроке я покажу вам, как создать абстрактную золотую сферу с эффектом дыма.</p>
<p align="center">
    <img height="262" src="/lessons/les1689/01.jpg" width="450" /></p>
<p>
    Для урока вам понадобятся <a href="http://qbrushes.net/smoke-fire/revnart-smoke-brushes/">специальные кисти</a>.</p>
<p>
    <strong>Шаг 1.</strong> Создаем новый документ любого размера с черным фоном. Создаем новый слой и берем <strong>Elliptical </strong><strong>Marquee </strong><strong>Tool</strong> <img height="23" src="tools/Elliptical Marquee.jpg" width="27" /> (Овальное выделение) (M) с такими параметрами:</p>
<p align="center">
    <img height="33" src="/lessons/les1689/02.jpg" width="442" /></p>
<p>
    Зажимаем клавишу SHIFT и рисуем окружность, как показано ниже:</p>
<p align="center">
    <img height="340" src="/lessons/les1689/03.jpg" width="450" /></p>
<p>'

 
preg_match_all('#src="([^"]+)"#i'$str$matches);
 
// preg_match_all('#href="(.*)"#siU', $str, $matches); 
echo '<pre>'
 
print_r($matches[1]);
?>

В результате на выходе имеем

Array
(
    [0] => images/content-smooth-top-right.gif
    [1] => /img/print.png
    [2] => /lessons/les1689/01.jpg
    [3] => tools/Elliptical Marquee.jpg
    [4] => /lessons/les1689/02.jpg
    [5] => /lessons/les1689/03.jpg
)

По данным содержащимся в тегах изображений нужно записать переменную
$path = /lessons/les1689/

Как правильно это сделать:
- У нас есть строка в ней много тегов рисунков,их м.т быть порядка 50 штук.
- Есть регулярное выражение которое позволяет вытащить все ссылки на изображения в виде элементов массива
- Из всех рисунков нужно взять только (01.jpg или 1.jpg 01.png или 1.png 01.gif или 1.gif) - это пишем кодом (переходим по всем элементам массива содержащего ссылки рисунков и если рисунок имеет имя (01.jpg или 1.jpg 01.png или 1.png 01.gif или 1.gif) то работаем только с этим элементом)
- Для изображения /lessons/les1689/01.jpg вырезаем всё что идёт до 1-го слеша справа, и у нас остаётся /lessons/les1689/ - это и есть наш путь.
Как это описать участком кода?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования