|
|
|
| Есть канал вида:
<?xml version="1.0" encoding="windows-1251"?>
<rss version="2.0">
<channel>
<title>Заголовок</title>
<link>http://www.site.ru/</link>
<description>Описание</description>
<lastBuildDate>Tue, 01 Aug 2007 22:31:41 GMT</lastBuildDate>
<language>ru</language>
<copyright>Copyright 1999-2007 site.ru</copyright>
<item>
<guid isPermaLink="false">1234</guid>
<pubDate>Sun, 05 Aug 2007 20:00:00 GMT</pubDate>
<link>http://www.site.ru/articles/1.htm</link>
<title>Заголовок</title>
<description>Текст </description>
</item>
<item>
<guid isPermaLink="false">1232</guid>
<pubDate>Sun, 05 Aug 2007 20:00:00 GMT</pubDate>
<link>http://www.site.ru/articles/2.htm</link>
<title>Заголовок 2 </title>
<description>Текст 2</description>
</item>
</channel>
</rss>
|
пытаюсь выдрать оттуда ссылки
$data = file_get_contents("http://site.ru/rss.php");
$pattern = "/<link>(.*)<\/link>/is";
preg_match_all($pattern, $data, $out);
unset($out[0]);
print_r ($out);
|
Не выходит. Помогите плз! | |
|
|
|
|
|
|
|
для: babilonian
(08.08.2007 в 03:00)
| | Либо
$pattern = "/<link>(.*)<\/link>/Uis";
|
, либо
$pattern = "/<link>(.*?)<\/link>/is";
|
| |
|
|
|
|
|
|
|
для: Unkind
(08.08.2007 в 08:42)
| | Пустой массив идет( Может потому что там 2 пробела в начале. Но конструкция вида
/^\s\s<link>(.*?)<\/link>/is
|
тоже не катит:( | |
|
|
|
|
|
|
|
для: babilonian
(08.08.2007 в 09:35)
| |
$pattern = "/<link>(.+?)<\/link>/is";
|
| |
|
|
|
|
|
|
|
для: babilonian
(08.08.2007 в 09:35)
| | Чтобы такая катила, нужно модификатор "m" добавить
"/^\s\s<link>(.*?)<\/link>/ism"
Unkind показал два рабочих варианта. | |
|
|
|
|
|
|
|
для: kasmanaft
(08.08.2007 в 12:36)
| | Верю, что оба варианта показанные Unkind'ом работают. Только почему-то не в моем сслучае. А вот за Ваш, большое спасибо. Как раз он подошел. | |
|
|
|