dkrnl / simplexmlreader
XMLReader类包装器,用于对大型XML(测试超过1G文件)进行简单的SAX读取(和简单的XPath查询)。
1.1
2018-02-14 04:55 UTC
Requires
- php: >=5.3.0
- ext-dom: *
- ext-xmlreader: *
- lib-libxml: *
This package is not auto-updated.
Last update: 2024-09-14 17:48:12 UTC
README
Wrapper XMLReader(https://php.ac.cn/manual/ru/book.xmlreader.php) 类,用于对大型XML(测试超过1G文件)进行简单的 SAX 读取(和简单的 XPath 查询)。
其他XML库(SimpleXML、DOMXML)的最小内存使用量。
使用示例 1
$reader = new SimpleXMLReader; $reader->open("big.xml"); $reader->registerCallback("by-node-name", function($reader) { $element = $reader->expandSimpleXml(); // copy of the current node as a SimpleXMLElement object $attributes = $element->attributes(); // read element attributes /* ...your code here... */ return true; }); $reader->registerCallback("/by/xpath/query", function($reader) { $element = $reader->expandDomDocument(); // copy of the current node as a DOMNode object $attributes = $element->attributes(); // read element attributes /* ...your code here... */ return true; }); $reader->parse(); $reader->close();
使用示例 2: http://github.com/dkrnl/SimpleXMLReader/blob/master/examples/example1.php
许可:公共领域