2015-06-02 3 views
1

Вот я использую этот код для индексации каталогов, теперь проблема в этом коде, я хочу сортировать его в обратном порядке, Пример показывает 1. Directory one, 2. Directory 2, 3. Directory 3 , Но я хочу, чтобы это в обратном порядке - Вот мой кодКак изменить порядок DirectoryIterator

<?php $path='files'; foreach (new DirectoryIterator($path) as $file) { 
if ($file->isDot()) continue; 

if ($file->isDir()) { 
    $filname=$file->getFilename(); 
    $filname=str_replace(' ','-',$filname); 
    echo '<div class="catRow"><a href="http://'.$sitenameurl.'/category/'.$filname.'.html"><div>&#187; '.$file->getFilename().'</div></a></div>'; 
}} ?> 

ответ

0

Насколько я знаю, нет никакого способа сделать это, установив определенный параметр или настройку. Однако, поскольку все, что вы хотите сделать, просто для того, чтобы отменить порядок, вы можете хранить данные в массиве, а затем просто изменить массив.

<?php 
$filesArr = array(); 
$path='files'; 
$Iterator = new DirectoryIterator($path); 

foreach ($Iterator as $file) { 
if ($file->isDot()) continue; 

if ($file->isDir()) { 
     $filname=$file->getFilename(); 
     $filname=str_replace(' ','-',$filname); 
     $filesArr[] = '<div class="catRow"><a href="http://'.$sitenameurl.'/category/'.$filname.'.html"><div>&#187; '.$file->getFilename().'</div></a></div>'; 
} 
} 

$revFilesArr = array_reverse($filesArr); 
foreach($revFilesArr as $fileRow){ 
    echo $fileRow; 
} 
?> 
Смежные вопросы