Php Xml处理之simplexml使用方法


Xml已经成为目前数据存储与传递的驱势,从去年的流行起来的Ajax来说,它有一个方法(ResponseXML)就是返回Xml对象,然后由Javascript来处理这个Xml对象。

显然服务器端的强悍编程语言PHP来说更需要这种技术的支持,较之流行的有Xml Parse, XmlReader, Xml Rpc…这里要探讨的并不是这些,而是一个已经集成于PHP环境中的simplexml。其使用方法比较简单,而且不需要加载其它的文件,及相关的配置。当然我用到最多的也是这个,相对于其它的php xml解析类来说还是更了解一些。

开始。。。

假如我们有一个这样的文件,

PHP XML处理XML代码如下
<?xml version="1.0" encoding="utf-8"?> 
<phplamp> 
    <post> 
        <title id="1">PHP XML处理介绍一</title> 
        <details>详细内容一</details> 
    </post> 
    <post> 
        <title id="2">PHP XML处理介绍二</title> 
        <details>详细内容二</details> 
    </post> 
    <post> 
        <title id="3">PHP XML处理介绍三</title> 
        <details>详细内容三</details> 
    </post> 
</phplamp>

现在需要用PHP的simplexml方法将其所有数据解析出来。

PHP XML处理PHP代码如下
<?php  
/** 
 * 加载Xml文件 
 */ 
$xml = simplexml_load_file("me.xml");  
 
/** 
 * 如果Xml为字符串的话可以用下面这个方法,后面的使用方法一样 
 * $xml = simplexml_load_string 
 */ 
   
/** 
 * 遍历$xml对象 
 */ 
foreach ($xml as $key => $value) {  
    // 获取属性  
    $attr = $value->title->attributes();  
    echo "Id: " . $attr['id'] . "<br />";  
    echo "Title: " . $value->title . "<br />";  
    echo "Details: " . $value->details . "<br /><br />";  
}  
?>