Zend_Feed-Introduction.xml 3.1 KB

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