Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Parse RSS Feed With Unique Elements

I have used PHP with simplexml to parse RSS using standard elements before like <title> <pubDate> etc. But how would I parse something custom to the feed like <xCal:location> or <xCal:dtstart> that uses an xCal data element?

Something like $item->xCal:dtstart will error out. How would I collect this data element?

A sample of a feed like this: http://www.trumba.com/calendars/vd.rss?mixin=236393%2c236288

like image 725
RonnieT Avatar asked Jan 18 '26 09:01

RonnieT


1 Answers

Try like this:

$feedUrl = 'http://www.trumba.com/calendars/vd.rss?mixin=236393%2c236288';
$rawFeed = file_get_contents($feedUrl);
$xml = new SimpleXmlElement($rawFeed);

$ns = $xml->getNamespaces(true);

//print_r($ns);
$xCal = $xml->channel->children($ns['xCal']);
echo ($xCal->version)."<br />";

foreach($xml->channel->item as $item)
{
    //print_r($item);
    $itemxTrumba=$item->children($ns['x-trumba']);
    echo $itemxTrumba->masterid."<br />";
}
//print_r($xCal);
like image 132
Prasath Albert Avatar answered Jan 20 '26 21:01

Prasath Albert