Um mit RSS in PHP zu arbeiten, bedienen wir uns einer fertigen Klasse. Das Rad muss ja nicht jedes mal neu erfunden werden. Ich möchte an dieser Stelle das alte MagpieRSS benutzen, dass leider nicht mehr weiter entwickelt wird. Wem das zu angestaubt ist, der kann gerne auf Alternativen wie SimplePie zurück greifen.

Unsere erste Datei soll twitterbot.php heißen und in den gleichen Ordner legen wir den Unterordner mit der MagpieRSS Klasse ab. Das folgende Beispiel zeigt, wie uns MagpieRSS den Inhalt aus unserem gewählten RSS Feed als Variable in PHP zur Verfügung stellt:

<?php

include_once 'magpierss/rss_fetch.inc';
define("MAGPIE_CACHE_AGE", 3600);
define("FEED_URL", "http://www.allesblog.de/feed/rss/");

$feed = fetch_rss(FEED_URL);

?>

Das war es schon. Die Variable $feed enthält jetzt ein Matrix aus Informationen, die den Inhalt unseres RSS Feeds wiederspiegelt. Wir gehen übrigens immer davon aus, dass alle unsere Aktionen und Befehle erfolgreich sind, sofern nicht anders angegeben. 😉

Als nächstes wählen wir das erste Element der Matrix aus und schauen uns mal dessen Struktur an:

<?php

$item = $feed->items[0];
print_r( $item );

?>

Und hier die Ausgabe, wenn wir das Script wie bisher geschrieben ausführen:

Array
(
    [title] => Zaubermaus ausgezaubert
    [description] => Zusammen mit den tollen neuen iMac Modellen erhält der Käuf
er neben dem schicken und flachen Bluetooth Wireless Keyboard, auch noch die Mag
ic Mouse. Meine Zaubermaus hat jetzt am Wochenende den Dienst quittiert. Erst ha
tte sie einen kurzen Aussetzer, bei dem mein Mauszeiger kurz vom Bildschirm vers
chwand und dann zeigte mir Snow Leapoard in der Menüleiste [...]
    [link] => http://www.allesblog.de/2010/06/17/maus-aus/von/micha/
    [summary] => Zusammen mit den tollen neuen iMac Modellen erhält der Käufer n
eben dem schicken und flachen Bluetooth Wireless Keyboard, auch noch die Magic M
ouse. Meine Zaubermaus hat jetzt am Wochenende den Dienst quittiert. Erst hatte
sie einen kurzen Aussetzer, bei dem mein Mauszeiger kurz vom Bildschirm verschwa
nd und dann zeigte mir Snow Leapoard in der Menüleiste [...]
)

Das sind 4 Felder mit den Namen title, description, link, summary. In unserem Beispiel ist es sogar so, dass description und summary identischen Inhalt haben.
Wir merken uns jetzt also den Inhalt aus den 3 Feldern als eigene Variablen:

<?php

$title = $item['title'];
$link = $item['link'];
$description = $item['description'];

?>

Damit ist Teil 2 abgeschlossen.

Allesblog#PHP#RSS#Twitter