[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Вариации на тему связки opendir() - readdir()
yuriy
Привет!
Есть такая всем известная связка для работы с файлами директории:


$dir = opendir($dirCache);
while (($file = readdir($dir)) !== false) {
...
}
closedir($dir);


Вопросы на засыпку. Как сортируются файлы при выполнении цикла while и можно ли эту сортировку как-то менять. Спасибо.

_____________
void x;
Игорь_Vasinsky
сортировать можно полученный массив с файлами.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
yuriy
Игорь_Vasinsky Полученный массив можно сортировать безусловно, но его нужно ещё получить. ) Речь пока не об массивах. Вот при получении имён файлов в цикле while (см. выше), имена этих файлов появляются в каком-то порядке. Каков порядок этих имён? Можно ли как-то менять порядок имён в цикле while.


_____________
void x;
yuriy
Игорь_Vasinsky Привет, Игорёк! Забыл поздаровкаться.


_____________
void x;
Игорь_Vasinsky
Привет)

Цитата
Возвращает имя следующего по порядку элемента каталога. Элементы возвращаются в том порядке, в котором они хранятся в файловой системе.


Цитата
в том порядке, в котором они хранятся в файловой системе.


а сортировку ты без массива не сделаешь smile.gif

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
yuriy
Игорь_Vasinsky Ну вот-вот, уже ближе к истине. Элементы возвращаются в том порядке, в котором они хранятся в файловой системе. А как элементы то всё-таки хранятся? В алфавитном порядке, по времени создания или ещё как-то?

_____________
void x;
yuriy
Просто, если файлов в директории очень много, то становится уже важно, как они всё-таки выводятся в цикле while (($file = readdir($dir)) !== false)

_____________
void x;
Игорь_Vasinsky
вот тут хз. сортирует их что то - то чем ты смотришь файловую систему.

Ты под виндой?

пуск->выполнить->cmd->enter

и набери DIR *.* - enter

ты какую нить логику сортировки видишь при выводе? я нет.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.