PHP返回特定的节点数?

时间:2016-04-25 05:30:49

标签: php xml

如果我有一个大格式的xml文件:

<person>
   <attribute>value</attribue>
</person>
<person>
   <attribute>value</attribue>
</person>
<person>
   <attribute>value</attribue>
</person>

继续进行数十万条<person>条记录....

我怎样才能使用php回显文件/返回'人'1-10,然后11-20等。

我发现了大量的示例(xpath等)返回所有节点或节点子集,但没有返回特定节点范围的示例。

我的特定文件有数十万个<person>个节点。我想输出xml格式<person> s 1-50,000,然后50,001-100,000等...

1 个答案:

答案 0 :(得分:0)

原来相当简单。我无法在网上找到具体的例子,但我设法将几个不同的例子拼凑成我需要的例子:

<?php

$xml = simplexml_load_file('somexmlfile.xml');

$result = $xml->xpath('/enterprise/person[position()>=1 and position()<=10000]')
;

while(list( , $node) = each($result)) {
    echo $node->asXML();
}
?>