Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.12.17;
Скачать: CL | DM;

Вниз

PHP<-->RSS   Найти похожие ветки 

 
furyz ©   (2006-11-25 13:46) [0]

Вообщем задумка написать парсер для превращения RSS в HTML (Грубо сказано) , ообщем в PHP я не гуру , но понять почему скрипт не пашет немогу ибо с таким сталкваюсь впервые.
Как видите код не вредоносный , где-то допущена ошибка , где незнаю
<?
$f=file("http://news.yandex.ru/world.rss");
$i = 0;
$at=$f;
while($i < 8){
$a[$i]=str_replace($at,"<item>","");
$a[$i]=str_replace($a[$i],"<title>","");
$a[$i]=str_replace($a[$i],"</title>","
<br>");
$a[$i]=str_replace($a[$i],"<link>","<a href=");
$a[$i]=str_replace($a[$i],"</link>"," ");
$a[$i]=str_replace($a[$i],"<description>","alt=");
$a[$i]=str_replace($a[$i],"</description>",">");
$a[$i]=$a[$i]+"Полная версия</a><br>";
$a[$i]=str_replace($a[$i],"</item>","");
echo $a[$i];
$i++;
}
?>
Так что просьба найти ошибку ,


 
furyz ©   (2006-11-25 13:51) [1]

Жирным оно выделилось из-за замены соответствующего тэга [B] :)


 
antonn ©   (2006-11-25 13:53) [2]

str_replace(что_заменять, чем_заменять, строка_в_которой_заменять);


 
furyz ©   (2006-11-25 14:05) [3]


> str_replace(что_заменять, чем_заменять, строка_в_которой_заменять);

ааа.. синтаксис напутал :)
Исправлю .
Спасибо


 
furyz ©   (2006-11-25 14:20) [4]

А сейчас че нетак?
<?
$f=file("http://news.yandex.ru/world.rss");
$i = 1;
$a=$f;
while($i < 8){
$a[$i]=str_replace("<item>","<div class=\"news_rss\" ",$a[$i]);
$a[$i]=str_replace("<title>","",$a[$i]);
$a[$i]=str_replace("</title>","
<br>",$a[$i]);
$a[$i]=str_replace("<link>","<a href=",$a[$i]);
$a[$i]=str_replace("</link>",">Полная версия</a>",$a[$i]);
$a[$i]=str_replace("<description>","<font size=\"-2\">",$a[$i]);
$a[$i]=str_replace("</description>","</font>",$a[$i]);
$a[$i]=str_replace("</item>","</div>",$a[$i]);
echo $a[$i];
$i++;
}
?>
Просто нет возможности Zend поставить , прямо в апаче вызываю.
Ошиок нет , но не вызывается (((


 
Сергей Г ©   (2006-11-25 14:38) [5]


> $i = 1;

Попробуй поставь  $i = 3;


 
furyz ©   (2006-11-25 15:22) [6]


> Попробуй поставь  $i = 3;

А зачем если не секрет?


 
Сергей Г ©   (2006-11-25 15:27) [7]


> echo $a[$i];

выводит $i элемент массива $а  в браузер.
первая строка файла http://news.yandex.ru/world.rss <?xml version="1.0" encoding="windows-1251" ?>
вторая <rss xmlns:yandex="http://news.yandex.ru" version="2.0"> немгут быть правильно обработаны браузером.
и у меня встречный вопрос почему

> while($i < 8)


 
furyz ©   (2006-11-25 15:30) [8]


> while($i < 8)

8 взял из головы


 
furyz ©   (2006-11-25 15:42) [9]

Спасибо за помощь , вот ДОСТАТОЧНО рабочий
<?
$f=file("http://news.yandex.ru/world.rss");
$i = 10;
$a=$f;
while($i < count($f)){
$a[$i]=str_replace("<item>","<div class=news_rss>",$a[$i]);
$a[$i]=str_replace("<pubDate>","<br><font size=\"-2\">",$a[$i]);
$a[$i]=str_replace("</pubDate>","</font><br>",$a[$i]);
$a[$i]=str_replace("<title>","",$a[$i]);
$a[$i]=str_replace("</title>","
<br>",$a[$i]);
$a[$i]=str_replace("<link>","<a href=",$a[$i]);
$a[$i]=str_replace("</link>"," ><font size=\"-2\">Полная версия</a></font><br>",$a[$i]);
$a[$i]=str_replace("<description>","<font size=\"-1\">",$a[$i]);
$a[$i]=str_replace("</description>","</font>",$a[$i]);
$a[$i]=str_replace("</item>","</div>",$a[$i]);
$a[$i]=str_replace("<guid>","<a style=\"font-size:10px;\" href=",$a[$i]);
$a[$i]=str_replace("</guid>",">Смотреть</a>",$a[$i]);
echo $a[$i];
$i++;
}
?>
Вы можете его доделать , распостраняется бесплатно :)


 
calm ©   (2006-11-25 17:29) [10]

Спасибо за работающий код.
Ты бы глянул в сторону XSL. Там все проще.


 
Furyz ©   (2006-11-25 19:34) [11]

> Спасибо за работающий код.
> Ты бы глянул в сторону XSL. Там все проще.

А зачем сильно извращаться в 5-20 минутном коде?
Ну от ссылки на мануал не откажусь :)


 
Юрий ©   (2006-11-25 20:21) [12]

Разбор XML:
http://ru2.php.net/manual/ru/ref.xml.php



Страницы: 1 вся ветка

Текущий архив: 2006.12.17;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.053 c
2-1164906050
ssss
2006-11-30 20:00
2006.12.17
Нажать клавишу мыши!


2-1164576576
HighLighter
2006-11-27 00:29
2006.12.17
HighLighting


15-1163574771
psa247
2006-11-15 10:12
2006.12.17
Нужен исталлятор


9-1140174587
Древолаз
2006-02-17 14:09
2006.12.17
Ошибка GLOxOde, ODEGL, ODEImport


2-1164540826
doncova1
2006-11-26 14:33
2006.12.17
ShellExecute