XML парсинг - Не получается :(

Fidget

Новичок
XML парсинг - Не получается :(

Пытаюсь парсить новости из ХМЛ...

но что-то информация выводитс с ошибками (то текст выводится нормально, то не полностью, то вообще не выводится)

Код приведен ниже...
PHP:
<?
require('conf.php');
$file = "http://news.yandex.ru/index.rss";
$news = array();
$currentNews = null;
$index = null;
function top($parser,$name,$attrs){
    global $currentNews,$index;
    switch($name){
        case 'channel':
                $news = array();
        break;
        case 'item':
                $currentNews = array();
        break;
        default:
                $index = $name;
        break;
    }
}
function bottom($parser,$name){
        global $news,$currentNews,$index;
        if ((is_array($currentNews)) && ($name=='item')){
                $news[] = $currentNews;
                $currentNews = null;
        }
        $index = null;}
function data($parser,$data){
        global $currentNews,$index;
        if ((is_array($currentNews)) && ($index))
                $currentNews[$index] = $data;
}
$parser = xml_parser_create();
xml_set_element_handler($parser,'top','bottom');
xml_set_character_data_handler($parser,'data');
xml_parser_set_option($parser,XML_OPTION_CASE_FOLDING,false);
$xml = join('',file($file));
if (!xml_parse($parser,$xml,true))
        die(sprintf(Ошибка XML: %s в строке %d',
                xml_error_string(xml_get_error_code($parser)),
                xml_get_current_line_number($parser)));
xml_parser_free($parser);

foreach($news as $n){
                  echo $n['title']."<br><hr>".$n['description'];
}
?>
 

slach

Новичок
читай примеры
смотри

как люди парсят RSS

http://boastology.com/pages/dload.php?id=rss-reader

http://zvonnews.sourceforge.net/download.php
 
Сверху