#php #xml
#php #xml
Вопрос:
Хорошо, я пытаюсь получить «ТОП-5» некоторых XML-файлов, упорядоченных по значению даты, надеюсь, вы сможете мне помочь, это то, что у меня есть на данный момент
function getTopSongs( $n ){
$result = array();
$count = 0;
foreach( glob("xml/*.xml") as $filename ) {
if( $count < $n ){
$xml = simplexml_load_file($filename) or die("Error: Cannot create object");
array_push($result, $xml);
$count ;
}
}
return $result;
}
Итак, теперь я вызываю это и хочу получить топ-5 с наибольшим количеством значений новостей, но не могу отсортировать его по дате:
$top5 = getTopSongs(5);
В этом примере на данный момент просто повторно запустите первые 5 xml, но я понятия не имею, как упорядочить по дате, спасибо
Комментарии:
1. Зависит от вашей структуры XML. Используйте в нем выражение XPath, чтобы найти нужную вам дату, сохраните все эти даты в сопоставлении даты с именем файла. После прочтения всех файлов отсортируйте карту по датам и верните 5 лучших.
2. чтобы получить дату, вам просто нужно вызвать $date = $xml[дата], поэтому, если я записываю все: