对于数据量较大的xml文件,使用xmlDocument读取时,虽然支持XPath,查询比较方便,但是需要先load,这样就浪费了内存,使用起来速度比较慢。
而如果使用XMLReader的话,不需要缓存,读取速度很快,但是如果要查询就不那么方便了,不支持XPath,只能通过Reader()方法前向循环。为了避免以上两种方法的缺点,想出以下方案:
1、先使用XMLReader将XML文件的内容读取到一个链表中。
2、查询的时候查询链表就可以了(可以在定义链表的类中定义查询函数,要查询的时候直接调用函数就可以了,非常方便)。
结果证明:速度和查询效果都很好。
以上是关于读大数据量的XML文件的读取问题的详细内容。更多信息请关注PHP中文网其他相关文章!