К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

Какой цикл будет работать быстрее - opendir с readdir или for с file_Exists?

Гость
0 - 20.03.2012 - 19:05
Файлы хранятся в виде
1.txt, 2.txt и т.д.

Есть два вариaнта
прочитать каталог с пом.
$handle=opendir('dir');
while (($file = readdir($handle))!=false) **
......

или

For($i=0;$i<1000000;$i++)**
if(file_exists("$i.txt"))**
.......
**else{break;**



--------
какой из вариантов буде работать быстрее?
файлы будут идти строго по порядку.



1 - 20.03.2012 - 19:18
может scandir() поможет http://www.php.su/functions/?scandir
Гость
2 - 20.03.2012 - 20:13
по идее он работает по принципу readdir, к тому же возвращает точки и двоеточия и папки тоже.
Но все равно, интересует что быстрее и желательно то, что меньше грузит процессор.
Гость
3 - 20.03.2012 - 21:17
glob('dir/*.txt') :)
Гость
4 - 20.03.2012 - 23:00
так это шелл.
А шеллы, наскоко мне известно, загибаются, если в папке более трех тысяы файлов.
Да и вопрос стоит - какая из двух быстрее и для проца ненагрузная.
vk
5 - 21.03.2012 - 00:26
Проще взять и проверить. Делов-то на час-другой.
А в БД никак данные не засунуть?
Гость
6 - 21.03.2012 - 01:15
Цитата:
Сообщение от vk Посмотреть сообщение
Проще взять и проверить. Делов-то на час-другой. А в БД никак данные не засунуть?
можно, но не хочется. =))
Проверять тоже влом. Может оно на моей файловой системе будет летать, а на иксах тормозить. Тут не угадаешь.
Скорей всего обойдусь for.
vk
7 - 21.03.2012 - 01:47
Как говорится, "For в помощь" =))
Гость
8 - 21.03.2012 - 01:49
7-Украинские субтитры >Скорей всего обойдусь for. - если файла 2.txt не окажется? польз 1 вариантом. а процу вообще [*****].
Гость
9 - 21.03.2012 - 02:48
Цитата:
Сообщение от lublurtk Посмотреть сообщение
7-Украинские субтитры &gt;Скорей всего обойдусь for. - если файла 2.txt не окажется? польз 1 вариантом. а процу вообще [*****].
Если не окажется, то значит срипт остановит перебор и создаст =))
А процу совсем не ***, т.к. сайтов много, а сервер один, и иногда он бедняга аж гудит. Приходится оптимизировать и кешировать по максимуму. =)


К списку вопросов






Copyright ©, Все права защищены