2010-10-31 47 views
0

我应该什么时候去Expat解析器而不是Dom解析器,反之亦然?这些解析器有什么区别?Expat解析器与Dom解析器在PHP

+0

可能重复的[最佳XML解析器for PHP](http://stackoverflow.com/questions/188414/best-xml-parser-for-php) – Gordon 2010-10-31 16:39:23

回答

0

xml_parser_函数为您提供了一个SAX风格的回调流,因为该文件已被使用。由您按照文档顺序进行线性处理或妥善处理或存储它们。

(XMLReader的是当务之急,而不是基于事件的接口,其可特别用于更严格定义的数据格式是有用的另一个串行存取解析器。)

DOMDocument装载机读取整个XML内容到存储器并给你一个简单的类似于对象的方式来查询文档的任何部分。对于随机访问任务来说,处理起来要容易得多,但对于大型文档来说效率也低得多。

1

Expat是一个SAX解析器。

这里的SAX和DOM解析器之间的比较

SAX:

  1. 的XML不加载到内存中

  2. 由上至下穿越

  3. 事件驱动和作品增量。

DOM:

  1. 加载XML到内存中。因此占据更多的记忆。

  2. 以任何方向遍历。