排序SimpleXML返回的结果和PHP中的Xpath

时间:2012-06-07 17:33:55

标签: php xml xpath simplexml sorting

我得到并显示XML的结果,如下所示:

<?php
    $xml = simplexml_load_file($url);
    //RUN QUERY ON XML
    $xQuery = $xml->xpath($query);

foreach($xQuery as $results){
?>
        MAKE:  <?php echo $results->Make;?><br />
        Model: <?php echo $results->Model;?><br />
   <?php } ?>

现在我要做的是对$ xQuery进行排序,例如在显示之前按字母顺序显示Make的结果。

这可能吗?如果是这样,我该如何管理呢?

1 个答案:

答案 0 :(得分:1)

您可以使用XPath或其他东西,但SimpleXMLElement::xpath()返回一个易于排序的数组:

usort($xQuery, function ($a, $b) { return strcmp($a->Make, $b->Make); });
foreach ($xQuery as $results) {
    // …
}