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
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Работа с подкаталогами
- речь про то, стоит ли правильность приносить в жертву краткости.
Еще раз про array_merge - там 100000+ файлов, чтобы почувствовать разницу?
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
Okula
Отправлено: 15 Февраля, 2012 - 14:58:39
Участник
Покинул форум
Сообщений всего: 1389
Дата рег-ции: Окт. 2010
Помог: 42 раз(а)
Выделено в отдельную тему из темы "Рекурсивное чтение директории" На простых хостингах такой вариант не сработает, да и кто му же - зачем писать велосипед, если это можно написать с помощью итераторов. К тому же куда удобнее
Кстати, проверил твою функцию она у меня не сработала.
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Выделено в отдельную тему из темы "Рекурсивное чтение директории" Okula
Оно и понятно, что итератор в данном случае сработает куда быстрее, я иллюстрировал
EuGen пишет:
стоит ли правильность приносить в жертву краткости
Ну и код для *nix сделан, разумеется.
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
Мелкий
Отправлено: 15 Февраля, 2012 - 15:25:10
Активный участник
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Помог: 618 раз(а)
Выделено в отдельную тему из темы "Рекурсивное чтение директории" В равных условиях - результат 0.32с и 0.37с для итератора и явной рекурсии соответственно.
Вызов шелла справился за 0.17с.
Директория на 15034 файла (сырцы PHP-5.3.9)
Ведь про кэш ФС не забыли при тесте?
PS: первая функция, GetFilesArr которая, - виндовая. '\\' надо на DIRECTORY_SEPARATOR поменять и будет кроссплатформенная.
----- PostgreSQL DBA
EuGen
Отправлено: 15 Февраля, 2012 - 15:32:27
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Выделено в отдельную тему из темы "Рекурсивное чтение директории" У меня собственно результат другой. Шелл быстрее всех в два раза как и у Вас, но рекурсия сильно сдала.
Выделил в отдельную тему
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
Okula
Отправлено: 15 Февраля, 2012 - 15:55:59
Участник
Покинул форум
Сообщений всего: 1389
Дата рег-ции: Окт. 2010
Помог: 42 раз(а)
Перенесено из темы "Рекурсивное чтение директории" Зачем удалили мои посты? У меня был рабочий вариант функции с кодом куда лучше.
Пишу ешё раз.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.