2
0

Zend_Feed-Introduction.xml 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 15681 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.feed.introduction">
  5. <title>Einführung</title>
  6. <para>
  7. <classname>Zend_Feed</classname> stellt Funktionalitäten für das Konsumieren von RSS und
  8. Atom Feeds. Es stellt eine natürliche Syntax bereit, um auf Elemente und Attribute des Feeds
  9. sowie auf die Attribute der Einträge zugreifen zu können. Mit derselben natürlichen Syntax
  10. bietet <classname>Zend_Feed</classname> auch eine umfassende Unterstützung für das Ändern
  11. von Feed und Eintragsstruktur sowie die Rückgabe der Ergebniss nach XML. In Zukunft könnte
  12. diese Modifizierungsunterstützung auch das Atom Publishing Protocol unterstützen.
  13. </para>
  14. <para>
  15. <classname>Zend_Feed</classname> besteht aus der Basisklasse
  16. <classname>Zend_Feed</classname>, sowie den beiden abstrakten Basisklassen
  17. <classname>Zend_Feed_Abstract</classname> und
  18. <classname>Zend_Feed_Entry_Abstract</classname> für die Darstellung von Feeds und Einträgen,
  19. aus speziellen Implementationen von Feeds und Einträgen für RSS und Atom sowie einem Helfer,
  20. der hinter den Kulissen die natürliche Syntax ermöglicht.
  21. </para>
  22. <para>
  23. Im Beispiel unten demonstrieren wir einen einfachen Anwendungsfall für die Abfrage eines
  24. RSS Feeds und die Speicherung relevanter Teile der Feed Daten in einem einfachen PHP Array,
  25. welches dann für die Ausgabe der Daten, das Speichern in eine Datenbank, usw. genutzt
  26. werden kann.
  27. </para>
  28. <note>
  29. <title>Achtung</title>
  30. <para>
  31. Viele RSS Feeds bieten verschiedene Eigenschaften für Kanäle und Einträge. Die RSS
  32. Spezifikation bietet viele optionale Eigenschaften, also sei dir dessen beim Schreiben
  33. von Code für die Verarbeitung von RSS Daten bewußt.
  34. </para>
  35. </note>
  36. <example id="zend.feed.introduction.example.rss">
  37. <title>Zend_Feed für die Verarbeitung von RSS Feed Daten verwenden</title>
  38. <programlisting language="php"><![CDATA[
  39. // hole die neuesten Slashdot Schlagzeilen
  40. try {
  41. $slashdotRss =
  42. Zend_Feed::import('http://rss.slashdot.org/Slashdot/slashdot');
  43. } catch (Zend_Feed_Exception $e) {
  44. // Import des Feeds ist fehlgeschlagen
  45. echo "Exception caught importing feed: {$e->getMessage()}\n";
  46. exit;
  47. }
  48. // Initialisiere das Array mit den Channel Daten
  49. $channel = array(
  50. 'title' => $slashdotRss->title(),
  51. 'link' => $slashdotRss->link(),
  52. 'description' => $slashdotRss->description(),
  53. 'items' => array()
  54. );
  55. // Durchlauf jeden Eintrag und speichere die relevanten Daten
  56. foreach ($slashdotRss as $item) {
  57. $channel['items'][] = array(
  58. 'title' => $item->title(),
  59. 'link' => $item->link(),
  60. 'description' => $item->description()
  61. );
  62. }
  63. ]]></programlisting>
  64. </example>
  65. </sect1>
  66. <!--
  67. vim:se ts=4 sw=4 et:
  68. -->