Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Сортировка файлов.Помогите ламеру!
Форумы портала PHP.SU » PHP » Программирование на PHP » Сортировка файлов.Помогите ламеру!

Страниц (1): [1]
 

1. Vampir - 01 Апреля, 2007 - 08:51:51 - перейти к сообщению
Здравствуйте.Наверно глупый вопрос задаю ,но все же.Подскажите,как отсортировать файлы в директории по дате их добавления и вывести например 5 самых новых файлов!
2. evgenijj - 01 Апреля, 2007 - 09:56:32 - перейти к сообщению
Функция
Цитата:

array scandir ( string directory [, integer sorting_order] )
Возвращает array, содержащий имена файлов и каталогов, расположенных по пути, переданном в параметре directory.

Функция
Цитата:

int filemtime ( string filename )
Функция возвращает время последнего изменения указанного файла или FALSE в случае возникновения ошибки.


PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3.  
  4. $dir = "./tmp";
  5. $list = scandir( $dir );
  6. echo "<p >Список файлов директории ".$dir."</p>";
  7. echo "<ul>";
  8. foreach( $list as $name )
  9. {
  10.     echo "<li>".$name."</li>";
  11.     $time[$name] =  filemtime( $dir."/".$name );               
  12. }
  13. echo "</ul>";
  14.  
  15. arsort( $time );
  16.  
  17. $cnt = 0;
  18. echo "<p >Последние 5 измененных:</p>";
  19. echo "<ul>";
  20. foreach( $time as $key => $value )
  21. {
  22.     if ( $key != "." and $key != ".." )
  23.     {
  24.         echo "<li>".$key." (время модификации: ".date("d.m.Y H:i:s", $value).")</li>";
  25.         $cnt = $cnt + 1;
  26.     }
  27.     if ( $cnt == 5 ) break;
  28. }
  29. echo "</ul>";
  30.  
  31. ?>
  32.  


Результат выполнения:

Список файлов директории ./tmp

* .
* ..
* Documentation.html
* Documentation.txt
* calendar.php
* db_details_db_info.php
* docs.css
* footer.inc.php
* license.php
* readme.php

Последние 5 измененных:

* Documentation.txt (время модификации: 15.09.2005 09:45:08)
* Documentation.html (время модификации: 15.09.2005 09:42:00)
* footer.inc.php (время модификации: 12.08.2005 06:14:06)
* license.php (время модификации: 05.08.2005 03:48:38)
* readme.php (время модификации: 05.08.2005 03:48:38)

 

Powered by ExBB FM 1.0 RC1