Einzelnen Beitrag anzeigen

Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#3

Re: JavaScript: RSS auslesen

  Alt 12. Jun 2005, 12:20
Moin Chris,

hier mal die Klasse fuer RDF-Feeds, wie ich sie verwende. Das Parsen erfolgt ueber Regular Expressions, welche ja auch in JS funktionieren. Eventuell kannst du ja die eine oder andere Idee verwenden, aber fertige Loesung kenne ich im Moment keine

Code:
<?php

class rdf_parser
{
   var $file;
   var $content = '';

   var $channel = array();
   var $items = array();

   function rdf_parser($file)
   {
      $this->file = $file;
   }

   function match($text, $elements)
   {
      $ret = array();
      foreach($elements as $element)
      {
         if(preg_match("#<$element>(.*?)</$element>#si", $text, $matches))
         {
            $ret[$element] = $matches[1];
         }
      }
      return $ret;
   }

   function parse()
   {
      $file = $this->file;
      $this->content = @implode('', @file($file));

      if(preg_match('#<channel>(.*?)</channel>#si', $this->content, $matches))
      {
         $this->channel = $this->match($matches[1], array('title', 'description', 'link'));
      }
      preg_match_all('#<item>(.*?)</item>#si', $this->content, $matches, PREG_PATTERN_ORDER);
      foreach($matches[1] as $item)
      {
         $this->items[] = $this->match($item, array('title', 'description', 'link'));
      }
   }
}

?>
Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat