适用于 PHP 的最佳 XML 解析器

2022-08-30 06:47:06

我以前使用过XML解析器,即使它工作正常,但我总体上对它不满意,感觉就像我正在使用解决方法,这些应该是基本功能。

我最近看到了SimpleXML,但我还没有尝试过。它更简单吗?两者有哪些优点和缺点?您使用过任何其他解析器吗?


答案 1

我不得不说SimpleXML是蛋糕,因为它首先是一个扩展,用C编写,并且非常快。但其次,解析的文档采用PHP对象的形式。所以你可以像.2一样“查询”。$root->myElement


答案 2

看看PHP可用的XML扩展

XML Parser和SimpleXML之间的主要区别在于后者不是拉取解析器。SimpleXML 构建在 DOM 扩展之上,并将整个 XML 文件加载到内存中。像XMLReader这样的XML解析器只会将当前节点加载到内存中。您可以为特定节点定义处理程序,这些处理程序将在解析器遇到它时触发。这更快,节省了内存。您为此付出了代价,无法使用XPath。

就个人而言,我发现SimpleXml在DOM上提供的功能非常有限(因此很简单)。你可以很容易地在DOM和SimpleXml之间切换,但我通常不会打扰并直接使用DOM路由。DOM 是 W3C DOM API 的实现,因此您可能熟悉其他语言(例如 JavaScript)的 DOM。


推荐