Ragazzi, sto creando una specie di aggregatore di feed rss in php. Adesso vorrei che i feed venissero pubblicati in ordine cronologico, ma non come avviene adesso (prima quelli di un sito e dopo quelli dell'altro), ma mi piacerebbe averli mischiati tra loro in modo da avere un aggiornamento reale di entrambi i siti tra le prime righe della pagina. Non penso di essere stato molto chiaro ma chiedetemi che vi spiego...Grazie milleQuesto è il codice:
codice:$insideitem = false; $tag = ''; $title = ''; $description = ''; $link = ''; function startElement($parser, $name, $attrs) { global $insideitem, $tag, $title, $description, $link; if ($insideitem) { $tag = $name; } elseif ($name == 'ITEM') { $insideitem = true; } } function endElement($parser, $name) { global $insideitem, $tag, $title, $description, $link; if ($name == 'ITEM') { printf(' <a href=\'%s\'>%s</a> ', trim($link),trim($title)); printf('%s</p>'."\n",trim($description)); $title = ''; $description = ''; $link = ''; $insideitem = false; } } function characterData($parser, $data) { global $insideitem, $tag, $title, $description, $link; if ($insideitem) { switch ($tag) { case 'TITLE': $title .= $data; break; case 'DESCRIPTION': $description .= $data; break; case 'LINK': $link .= $data; break; } } } $xml_parser = xml_parser_create(); xml_set_element_handler($xml_parser, 'startElement', 'endElement'); xml_set_character_data_handler($xml_parser, "characterData"); $fp = fopen('http://www.corrierediragusa.it/categoria_xml.asp?loc=Comiso','r') or die('Error reading RSS data.'); while ($data = fread($fp, 4096)) { xml_parse($xml_parser, $data, feof($fp)) or 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); $xml_parser = xml_parser_create(); xml_set_element_handler($xml_parser, 'startElement', 'endElement'); xml_set_character_data_handler($xml_parser, "characterData"); $fp = fopen('http://www.reteiblea.it/?feed=rss2','r') or die('Error reading RSS data.'); while ($data = fread($fp, 4096)) { xml_parse($xml_parser, $data, feof($fp)) or 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); ?>

Questo è il codice:
Rispondi quotando