近来较少写博客了,得克服懒惰的秉性啊!
今天研究了一下php对xml文件的解析。
用到了php的simplexml_load_file()方法,该方法会将xml文件生成一个SimpleXMLElement对象,该对象是继承了Traversable接口的对象,即可以像数组那样遍历其子集。
这样,我们就可以循环得到xml文件的内容,不多说废话,上例子。
假设有如下内容,名为test.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代码中作如下处理:
<?php
$xmlFile = simplexml_load_file("test.xml");
echo '<pre>';
print_r($xmlFile);
foreach ($xmlFile AS $key=>$val){
foreach ($val AS $k=>$v){
$attr = $val->$k->attributes();
echo $k . ':' .$val->$k . '<br>';
if ($attr) {
foreach ($attr As $name=>$value) {
echo $k . '-' . $name . ': ' . $value;
echo '<br>';
}
}
}
echo '<br>';
}
输出如下:
title:PHP XML处理介绍一
title-id: 1
details:详细内容一
title:PHP XML处理介绍二
title-id: 2
details:详细内容二
title:PHP XML处理介绍三
title-id: 3
details:详细内容三
当然,php处理xml的方法还可以通过生成DOMDocument对象来完成。在此不加赘述。