用SimpleXML解析RSS Feed

今天需要用PHP来做解析RSS Feed的工作,用SimpleXML来完成的,因为RSS本来就是一种XML,只是规定了一些东西而已。

我要解析的东西比较简单,只是为了获得dict.cn上的每日口语一句的内容就可以了。

大概的代码就像这个样子

$feedUrl ='http://bbs.dict.cn/rss.php?fid=44&auth=0';
$rawFeed = file_get_contents($feedUrl);
$xml = new SimpleXmlElement($rawFeed);

$channel['title'] = $xml->channel->title;
$channel['link'] = $xml->channel->link;

$item=$xml->channel->item;

$message= (string) trim($item->description);

如果你需要获得title和url等信息,你可以使用一个数组来获得,同时一般的RSS 的<item>都有很多,这个也是,只是我只是需要第一个。你需要全部就可以用foreach去遍历就可以了。

另外需要注意的是,一些复杂的RSS还要涉及到命名空间,推荐一篇文章,写的比较清楚:

Using SimpleXML To Parse RSS Feeds





此条目发表在 PHP 分类目录,贴了 , 标签。将固定链接加入收藏夹。

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>