我在网站上搜索过,无法找到我问题的确切结果。
我需要搜索xml文件,并按日期降序排序输出。
<?xml version="1.0"?>
<entries>
<entry>
<date>1299565881</date>
<action>made an action under category</action>
<user>Admin</user>
</entry>
<entry>
<date>1299566115</date>
<action>Item deleted</action>
<user>Admin</user>
</entry>
</entries>
这是我的代码
<?php
$data = simplexml_load_file($filename);
if($to_date_int>$global_date)
$op = $data->xpath('/entries/entry[date<='.$to_date_int.']');
else
$op = $data->xpath('/entries/entry');
提前致谢..
答案 0 :(得分:1)
由于$op
将是匹配的entry
元素的数组,因此您可以使用PHP的数组排序函数按其关联的date
元素进行排序。
function sort_entries_by_date($a, $b) {
return (int) $b->date - (int) $a->date;
}
usort($op, 'sort_entries_by_date');
(如果您使用的是PHP 5.3,则可以通过内联匿名函数放置指定的函数。)