Org Skrevet 1. januar 2007 Del Skrevet 1. januar 2007 Ja.. Tittelen beskiver det meste da Hvordan få et RSS script til å lese fra flere RSS-feeder samtidig og legge de inn etter rekkefølge fra dato? <?php setlocale(LC_ALL, 'no', 'no-NO', 'no_NO'); $dato = strftime('%d %B %Y, %H:%M'); class RSSParser { var $insideitem = false; var $tag = ""; var $title = ""; var $description = ""; var $link = ""; var $dtime = ""; function startElement($parser, $tagName, $attrs) { if ($this->insideitem) { $this->tag = $tagName; } elseif ($tagName == "ITEM") { $this->insideitem = true; } } function endElement($parser, $tagName) { if ($tagName == "ITEM") { printf("<b><a href='%s'>%s</a></b> %s<br>", trim($this->link),htmlspecialchars(trim($this->title)),trim($this->dtime)); $hvilke = array("<b>", "</b>"); $erstatt = array("", ""); printf("%s<br><br>", trim(str_replace($hvilke, $erstatt, $this->description))); $this->title = ""; $this->description = ""; $this->link = ""; $this->dtime = ""; $this->insideitem = false; } } function characterData($parser, $data) { if ($this->insideitem) { switch ($this->tag) { case "TITLE": $this->title .= $data; break; case "DC:DATE": $dato = $data; $dato2 = explode("T", $dato); $dato3 = explode("+", $dato2[1]); $datoen = "<b>".$dato3[0]."</b> ".str_replace("-", ".", $dato2[0]); $this->dtime .= $datoen; break; case "DESCRIPTION": $this->description .= $data; break; case "LINK": $this->link .= $data; break; } } } } $xml_parser = xml_parser_create(); $rss_parser = new RSSParser(); xml_set_object($xml_parser,&$rss_parser); xml_set_element_handler($xml_parser, "startElement", "endElement"); xml_set_character_data_handler($xml_parser, "characterData"); $fp = fopen("http://www.dinside.no/phpf/feed/rss/dinside.php","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); ?> Koden jeg vil bruke. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå