Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: opendir + ORDER BY
 
 автор: STEVER   (25.03.2008 в 12:01)   письмо автору
 
 

Как можно выводить файлы в алфавитном порядке и по какому принципу работает readdir() ?

   
 
 автор: STEVER   (25.03.2008 в 12:02)   письмо автору
 
   для: STEVER   (25.03.2008 в 12:01)
 

В мане написано, что "The filenames are returned in the order in which they are stored by the filesystem. "
Можно ли как то это изменить?

   
 
 автор: Atheist   (25.03.2008 в 12:18)   письмо автору
 
   для: STEVER   (25.03.2008 в 12:02)
 

C помощью opendir и readdir нельзя (если только результат забить в массив, а после отсортировать). Можно с помощью glob, scandir.

   
 
 автор: STEVER   (25.03.2008 в 15:09)   письмо автору
 
   для: Atheist   (25.03.2008 в 12:18)
 

scandir быстрая?
или не играет большой разницы, если сделать readdir а потом sort ?

   
 
 автор: Atheist   (25.03.2008 в 15:10)   письмо автору
 
   для: STEVER   (25.03.2008 в 15:09)
 

scandir будет точно быстрее.

   
 
 автор: mihdan   (25.03.2008 в 15:13)   письмо автору
 
   для: Atheist   (25.03.2008 в 15:10)
 

scandir - доступна только в РНР пятой версии

   
 
 автор: mihdan   (25.03.2008 в 14:05)   письмо автору
 
   для: STEVER   (25.03.2008 в 12:01)
 

<?
$fp 
opendir('.');
while (
false !== ($file readdir($fp)))  {
   
$files[] = $file;
}
sort($files);

echo 
'<pre>';
print_r($files);

closedir($fp);
?>

   
 
 автор: Atheist   (25.03.2008 в 14:08)   письмо автору
 
   для: mihdan   (25.03.2008 в 14:05)
 

> $files[] = $file;
$files ранее не определен. А это значит, что имея несчастье быть с register_globals = on можно запросить документ как, например, http://example.com/?files[]=my_filename и, возможно, серъезно навредить администратору.

   
 
 автор: mihdan   (25.03.2008 в 14:10)   письмо автору
 
   для: Atheist   (25.03.2008 в 14:08)
 

Это же только пример сортировки а не защищенного приложения!


<?
$files 
= array();
$fp opendir('.');
while (
false !== ($file readdir($fp)))  {
   
$files[] = $file;
}
sort($files);

echo 
'<pre>';
print_r($files);

closedir($fp);
?> 

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования