解析PHP中的XML数据

http://www.verynan.com 2011-03-21 17:06 十分教育网

如果你计划在PHP中处理XML数据,就需要一个XML库为你提取数据。例如解析RSS feed或是模式匹配(寻找XHTML图像或是元素)。

SimpleXML扩展提供了一个非常直观的API,更容易将XML转换成对象和遍历元素。唯一的缺点就是在内存中加载整个文档或是非常大的XML文件,它的性能可能是一个问题。

如果性能是一个考虑因素,你可以去使用XMLReader。XMLReader是一个XML解析器,它通过在加载过程中遍历每个节点,在而不是在内存中加载整个文档。

下面的代码使用简单的XML可以从我的网站获取最新的RSS。在我的服务器上,我已经使用Curl库处理HTTP连接,因为它支持服务器托管并且更安全。

<?php
 
function load_file($url) {
$ch = curl_init($url);
#Return http response in string
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$xml = simplexml_load_string(curl_exec($ch));
return $xml;
}
 
$feedurl = 'http://naveenbalani.com/index.php/feed/';
$rss = load_file($feedurl);
 
foreach ($rss->channel->item as $item) {
echo "<h2>" . $item->title . "</h2>";
echo "<p>" . $item->description . "</p>";
}
 
?>

原文链接:http://css.dzone.com/news/parsing-xml-data-php