2011-01-05 7 views
1

Ich versuche, einen RSS-Feed zu analysieren, um nur Bilder anzuzeigen. Ich verwende einen generischen Wordpress-Feed und möchte alles entfernen, was kein Bild ist.Zeige nur Bilder aus einem RSS-Feed mit PHP

Ich habe mit simplepie herum gespielt und bin aber nicht in der Lage gewesen, einen soliden Weg zu finden, Bilder nur anzuzeigen.

Ich fand diesen alten Simplepie Forenbeitrag (http://simplepie.org/support/viewtopic.php?id=643) aber konnte den Code nicht funktionieren. Ich nehme an, dass es vielleicht gerade veraltet ist, bin aber unsicher.

Ich bin nicht an Simplepie gebunden, aber muss in PHP arbeiten und HTML ausgeben. Jede Hilfe würde sehr geschätzt werden!

+0

Haben Sie XPath versucht? Sie sagen, es ist ziemlich gut. –

Antwort

2

Oder so etwas wie:

$xml = simplexml_load_file($xml_file_path); 
$imgs = $xml->xpath('/rss/channel/image'); 
foreach($imgs as $image) { 
    echo $image->url; 
} 
+0

Das hat den Trick, danke! Sheesh, was habe ich mit simplepie SimpleXML ist alle Arten von genial – Colin

+0

es ist gut für liest, Hinzufügen von Knoten und nicht strukturelle Änderungen, aber wenn Sie jemals Knoten entfernen möchten, müssen Sie stattdessen die PHP-DOM-Klassen verwenden. – dqhendricks

0

Auschecken SimpleXML.

Verwenden Sie es und xpath sollten Sie bekommen, was Sie brauchen.

$feed = simplexml_load_file('foo.xml'); 

foreach ($feed->xpath('//img') as $imgnode) { 
    // ... 
} 
+0

Danke, ich werde sicherlich in Zukunft SimpleXML und Xpath verwenden – Colin