"", "LINK"=>"", "DESCRIPTION"=>"", "URL"=>"", "ID"=>""); } function startElement($parser, $name){ global $_depth, $_tags, $_item; if (($name=="ITEM") ||($name=="CHANNEL") || ($name=="IMAGE") || ($name=="ENTRY")) { initArray(); } @$_depth[$parser]++; array_push($_tags, $name); } function endElement($parser, $name){ global $_depth, $_tags, $_item; array_pop($_tags); $_depth[$parser]--; switch ($name) { case "ENTRY": echo "{$_item['TITLE']}..
\n"; initArray(); break; case "ITEM": echo "{$_item['TITLE']}
\n"; initArray(); break; case "IMAGE": echo "

{$_item['TITLE']}....

\n"; initArray(); break; } } function parseData($parser, $text){ global $_depth, $_tags, $_item; $crap = preg_replace ("/\s/", "", $text); /* is the data just whitespace? if so, we don't want it! */ if ($crap) { $text = preg_replace ("/^\s+/", "", $text); /* get rid of leading whitespace */ if (@$_item[$_tags[$_depth[$parser]]]) { $_item[$_tags[$_depth[$parser]]] .= $text; } else { $_item[$_tags[$_depth[$parser]]] = $text; } } } function parseRDF($file){ global $_depth, $_tags, $_item; $xml_parser = xml_parser_create(); initArray(); /* Set up event handlers */ xml_set_element_handler($xml_parser, "startElement", "endElement"); xml_set_character_data_handler($xml_parser, "parseData"); /* Open up the file */ $fp = fopen ($file, "r") or die ("Could not open $file for input"); while ($data = fread ($fp, 4096)) { if (!xml_parse($xml_parser, $data, feof($fp))) { die (sprintf("XML error: %s at line %d", xml_error_string(xml_get_error_code($xml_parser)), xml_get_current_line_number($xml_parser))); } } fclose($fp); xml_parser_free($xml_parser); } parseRDF("http://www.golfnet.nl/component/option,com_bca-rss-syndicator/feed_id,1/"); //parseRDF("http://slashdot.org/slashdot.rdf"); ?>