PHP - вырезать url

WhiteFalke
На сайте с 16.09.2007
Offline
184
1340

Приветствую!

Может кто поможет, буду очень благодарен :)

На входе мы имеем такой код:

<!--TBegin--><a href="http://site.ru/01.jpg" onclick="return hs.expand(this)" ><img align="left" src="http://site.ru/thumbs/01.jpg" alt='Nokia Lumia 900' title='Nokia Lumia 900'  /></a><!--TEnd-->
<!--TBegin--><a href="http://site.ru/02.jpg" onclick="return hs.expand(this)" ><img align="left" src="http://site.ru/thumbs/02.jpg" alt='Nokia Lumia 900' title='Nokia Lumia 900' /></a><!--TEnd-->
<!--TBegin--><a href="http://site.ru/03.jpg" onclick="return hs.expand(this)" ><img align="left" src="http://site.ru/thumbs/03.jpg" alt='Nokia Lumia 900' title='Nokia Lumia 900' /></a><!--TEnd-->
<!--TBegin--><a href="http://site.ru/04.jpg" onclick="return hs.expand(this)" ><img align="left" src="http://site.ru/thumbs/04.jpg" alt='Nokia Lumia 900' title='Nokia Lumia 900' /></a><!--TEnd-->

На выходе нужны две переменные, в первой переменной будет:


<div><a href="#"><img src="http://site.ru/01.jpg" alt="" /></a></div>
<div><a href="#"><img src="http://site.ru/02.jpg" alt="" /></a></div>
<div><a href="#"><img src="http://site.ru/03.jpg" alt="" /></a></div>
<div><a href="#"><img src="http://site.ru/04.jpg" alt="" /></a></div>

Во второй такое:


<li class="current"><a href="#0"><img src="http://site.ru/thumbs/01.jpg" alt="" /></a></li>
<li><a href="#1"><img src="http://site.ru/thumbs/02.jpg" alt="" /></a></li>
<li><a href="#2"><img src="http://site.ru/thumbs/03.jpg" alt="" /></a></li>
<li class="last"><img src="http://site.ru/thumbs/04.jpg" alt="" /></a></li>
SS
На сайте с 28.05.2008
Offline
154
#1


$str = file_get_contents('txt.txt');
preg_match_all('/<!--TBegin-->(.+)src="(.+)"(.+)<!--TEnd-->/',$str,$arr);
$count = count($arr) - 1;
foreach ($arr[2] as $key => $v)
{
$p1 .= '<div><a href="#"><img src="'.$v.'" alt="" /></a></div>';
if ($key == 0)
{
$p2 .= '<li class="current"><a href="#0"><img src="'.$v.'" alt="" /></a></li>';
}
elseif ($key == $count)
{
$p2 .= '<li class="last"><img src="'.$v.'" alt="" /></a></li>';
}
else
{
$p2 .= '<li><a href="#'.$key.'"><img src="'.$v.'" alt="" /></a></li>';
}
}

$arr***91;2***93; - это $arr[2]

парсер сьедает :)

WhiteFalke
На сайте с 16.09.2007
Offline
184
#2

SmartSEO, не могу попробовать, т.к. вылетает ошибка

Parse error: syntax error, unexpected T_STRING in /home/index.php(678) : eval()'d code on line 179

т.к. в коде есть ' и я в упор не могу найти где в DLE сделать так что бы вместо ' были "

Станислав
На сайте с 27.12.2009
Offline
258
#3

<?php
$str = file_get_contents("txt.txt") ;
preg_match_all("/<!--TBegin-->(.+)src=\"(.+)\"(.+)<!--TEnd-->/",$str,$arr) ;
$count = count($arr) - 1 ;
foreach ($arr[2] as $key => $v) {
$p1 .= "<div><a href=\"#\"><img src=\"{$v}\" alt=\"\" /></a></div>" ;
if ($key == 0) {
$p2 .= "<li class=\"current\"><a href=\"#0\"><img src=\"{$v}\" alt=\"\" /></a></li>" ;
} elseif ($key == $count) {
$p2 .= "<li class=\"last\"><img src=\"{$v}\" alt=\"\" /></a></li>" ;
} else {
$p2 .= "<li><a href=\"#{$key}\"><img src=\"{$v}\" alt=\"\" /></a></li>" ;
}
}
?>
Мы там, где рады нас видеть.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий