Forum Webscript.Ru

Программирование => PHP => Тема начата: semya от 30 Января 2003, 13:35:40

Название: работа с директорией
Отправлено: semya от 30 Января 2003, 13:35:40
есть директория, в ней 1300 файлов, можно ли как-то не перебирая всей директории, получить информацию о файлах к примеру с 10го по 40й...? то есть их имена.
спасибо
Название: работа с директорией
Отправлено: Alexey333 от 30 Января 2003, 13:39:48
Смотря какие у них имена. Если ты их называл упорядоченно, например, 1.txt 2.txt...100.txt , то несложно. Если же имена в беспорядке, то тут надо подумать.
Название: работа с директорией
Отправлено: semya от 30 Января 2003, 13:45:05
Цитировать
1.txt 2.txt...100.txt


ну допустим пронумеровал по порядку...
но я насколько понимаю тогда нужно знать общее число файлов в директории, чтобы не промахнуться, так?
Название: работа с директорией
Отправлено: Alexey333 от 30 Января 2003, 13:47:13
Цитировать
есть директория, в ней 1300 файлов

Ты же сам написал точное их количество. Или это не точно?
Название: работа с директорией
Отправлено: Xander от 30 Января 2003, 13:49:37
semya
А может лучше для такой задачи использовать БД?
Директория с тысячей файлов это уже нехорошо, особенно учитывая, что файловая система ext2 не может отводить меньше кластера на файл. То есть если твой сайт работает под Linux, то ты получишь ощутисые тормоза с доступом к этой директории и займешь кучу лишнего дискового пространства.
Название: работа с директорией
Отправлено: semya от 30 Января 2003, 13:53:39
Цитировать
А может лучше для такой задачи использовать БД?


вот, веришь! только что так и сделал, сам понял что скорее всего по другому и не получится, хотя задача все же интересная...

Остановлюсь на варианте с базой... всем спасибо!
Название: работа с директорией
Отправлено: Maniac от 30 Января 2003, 18:16:01
Цитировать
задача все же интересная

Ну, чисто из академического интереса можно решать примерно так:

for ($i=10;$i<=40;$i++)
if (file_exists("$dir/$i.txt")) $names[]=$i;