php dom能够跨层获取数据,但是不能保证层次关系 使用xpath能够更好的解决 跨层获取数据 下面的小示例是IE11下的执行结果 class.xml:
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE 班级 SYSTEM "class.dtd"> <!-- ①周星驰 --> <班级> <学生> <!-- ①周星驰 --> <名字>①周星驰</名字> <年龄>23</年龄> <!-- ②鲁智深蒋门神> ③蒋门神 --> <介绍>学习刻苦<名字>②鲁智深<名字>③蒋门神</名字></名字></介绍> </学生> <学生> <!-- ④林青霞 --> <名字>④林青霞</名字> <年龄>32</年龄> <介绍>是一个好学生</介绍> </学生> <!-- ⑤武松 --> <名字>⑤武松</名字> </班级> 服务器文件: <?php header('content-type:text/html;charset=utf-8'); $xmldoc=new DOMDocument(); $xmldoc->load('Class.xml'); $stu1=$xmldoc->getElementsByTagName('名字'); for($i=0;$i<$stu1->length;$i++){ echo $i.'-------------------------'.$stu1->item($i)->nodeValue.'<br />'; } ?> |
|