glob () - Сортировать по имени
Как я могу отменить сортировку по имени файла? В настоящее время он отображает все текстовые файлы в алфавитном / числовом порядке, но я пытаюсь отобразить его в порядке убывания. Сейчас-да...
<?php
foreach (glob("*.txt") as $filename) {
include($filename);
}
?>
Я довольно новичок в PHP, но я попробовал usort с добавленным массивом, но это просто привело к отображению только 1 текстовых файлов, поэтому либо это не работает, либо я просто закодировал его неправильно.
3 ответов
лучший способ сделать это с usort()
будет...
usort($files, function($a, $b) {
return strcmp($b, $a);
});
Как glob()
функция сортирует имена файлов как поведение по умолчанию, вы можете просто перебирать результирующий массив в обратном порядке и, следовательно, избегать любой дополнительной обработки:
<?php
for($result = glob("*.txt"), $i = count($result); $i > 0; --$i) {
include($result[$i-1]);
}
?>