建筑网站转发,专门做招商的网站是什么,网站集成微信登录,网站后台asp源码如果使用 PHP 解析 XML 的话#xff0c;那么常见的选择有如下几种#xff1a;DOM、SimpleXML、XMLReader。如果要解析 XML 大文件的话#xff0c;那么首先要排除的是 DOM#xff0c;因为使用 DOM 的话#xff0c;需要把整个文件全部加载才能解析#xff0c;效率堪忧…如果使用 PHP 解析 XML 的话那么常见的选择有如下几种DOM、SimpleXML、XMLReader。如果要解析 XML 大文件的话那么首先要排除的是 DOM因为使用 DOM 的话需要把整个文件全部加载才能解析效率堪忧相比较而言SimpleXML 和 XMLReader 更好些SimpleXML 相对简单而 XMLReader 相对复杂但是它可以自定义解析整个过程特别是流式解析的特点让其效率更高。下面我以一个 XML 大文件例子来对比一下 SimpleXML 和 XMLReader 的用法.........................................................先看看用 SimpleXML 的话怎么搞$values simplexml_load_file(file.xml);foreach ($values as $value) {var_dump($value);}?在看看用 XMLReader 的话怎么搞$xml new XMLReader();$xml-open(file.xml);for ($name null, $value []; $xml-read(); null) {if ($xml-nodeType XMLReader::ELEMENT) {$name $xml-name;if ($name certificate) {if ($value) {var_dump($value);}$value [];continue;}}if ($xml-nodeType XMLReader::TEXT) {if ($name) {$value[$name] $xml-value;}}}?在本例中XML 文件有几百万行XMLReader 的效率是 SimpleXML 的两倍左右。了解了相关知识让我们看看如何选择合适的 XML 解析方法如果规则比较复杂的话 比如要查询当前节点的上下文那么 DOM 是合理的选择如果 XML 体积比较大的话那么 XMLReader 是效率更高。不过如果没有特殊需求的话那么尽量选择 SimpleXML毕竟它用起来更简单。