| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- EN-Revision: 24249 -->
- <!-- Reviewed: no -->
- <sect1 id="zend.feed.introduction">
- <title>Einführung</title>
- <para>
- <classname>Zend_Feed</classname> stellt Funktionalitäten für das Konsumieren von
- <acronym>RSS</acronym> und Atom Feeds. Es stellt eine natürliche Syntax bereit, um auf
- Elemente und Attribute des Feeds sowie auf die Attribute der Einträge zugreifen zu können.
- Mit derselben natürlichen Syntax bietet <classname>Zend_Feed</classname> auch eine
- umfassende Unterstützung für das Ändern von Feed und Eintragsstruktur sowie die Rückgabe der
- Ergebniss nach <acronym>XML</acronym>. In Zukunft könnte diese Modifizierungsunterstützung
- auch das Atom Publishing Protocol unterstützen.
- </para>
- <para>
- <classname>Zend_Feed</classname> besteht aus der Basisklasse
- <classname>Zend_Feed</classname>, sowie den beiden abstrakten Basisklassen
- <classname>Zend_Feed_Abstract</classname> und
- <classname>Zend_Feed_Entry_Abstract</classname> für die Darstellung von Feeds und Einträgen,
- aus speziellen Implementationen von Feeds und Einträgen für <acronym>RSS</acronym> und Atom
- sowie einem Helfer, der hinter den Kulissen die natürliche Syntax ermöglicht.
- </para>
- <para>
- Im Beispiel unten demonstrieren wir einen einfachen Anwendungsfall für die Abfrage eines
- <acronym>RSS</acronym> Feeds und die Speicherung relevanter Teile der Feed Daten in einem
- einfachen <acronym>PHP</acronym> Array, welches dann für die Ausgabe der Daten, das
- Speichern in eine Datenbank, usw. genutzt werden kann.
- </para>
- <note>
- <title>Achtung</title>
- <para>
- Viele <acronym>RSS</acronym> Feeds bieten verschiedene Eigenschaften für Kanäle und
- Einträge. Die <acronym>RSS</acronym> Spezifikation bietet viele optionale Eigenschaften,
- also sei dir dessen beim Schreiben von Code für die Verarbeitung von
- <acronym>RSS</acronym> Daten bewußt.
- </para>
- </note>
- <example id="zend.feed.introduction.example.rss">
- <title>Zend_Feed für die Verarbeitung von RSS Feed Daten verwenden</title>
- <programlisting language="php"><![CDATA[
- // hole die neuesten Slashdot Schlagzeilen
- try {
- $slashdotRss =
- Zend_Feed::import('http://rss.slashdot.org/Slashdot/slashdot');
- } catch (Zend_Feed_Exception $e) {
- // Import des Feeds ist fehlgeschlagen
- echo "Exception caught importing feed: {$e->getMessage()}\n";
- exit;
- }
- // Initialisiere das Array mit den Channel Daten
- $channel = array(
- 'title' => $slashdotRss->title(),
- 'link' => $slashdotRss->link(),
- 'description' => $slashdotRss->description(),
- 'items' => array()
- );
- // Durchlauf jeden Eintrag und speichere die relevanten Daten
- foreach ($slashdotRss as $item) {
- $channel['items'][] = array(
- 'title' => $item->title(),
- 'link' => $item->link(),
- 'description' => $item->description()
- );
- }
- ]]></programlisting>
- </example>
- </sect1>
|