我对SimpleDOM和sortedXPath的使用有点问题。 给出以下XML结构。我想按行ID,姓名或生日来排序。
<table>
<data>
<row id="1">
<column>Jimmy</column>
<column>01/10/1977</column>
</row>
<row id="3">
<column>Johnny</column>
<column>04/01/2001</column>
</row>
<row id="2">
<column>Tim</column>
<column>13/02/1990</column>
</row>
<row id="4">
<column>Paul</column>
<column>13/02/1955</column>
</row>
</data>
</table>
使用以下内容对id排序结果很简单:
foreach($xmlObject->data->sortedXPath('row','@id', SORT_DESC) as $node)
所以$ node包含所有行,我可以按正确的顺序输出它们。但我无法按名称或日期订购。我试过了:
foreach($xmlObject->data->sortedXPath('row','column[0]', SORT_DESC) as $node)
foreach($xmlObject->data->sortedXPath('row/column[0]','.', SORT_ASC) as $node)
但是这会创建$ nodes,只有column的值,在奇怪的oder中或根本没有输出。请帮助我在这里坚持几个小时:(
此致
答案 0 :(得分:1)
XPath计数从1开始。
foreach($xmlObject->data->sortedXPath('row','column[1]', SORT_DESC) as $node)