1 / 1 / 1
Регистрация: 13.02.2011
Сообщений: 105
|
|
1 | |
Работа с файлами04.05.2011, 12:49. Показов 1182. Ответов 5
Метки нет Все метки)
(
Есть такая структура папок и файлов
папка 1(1.txt, 2.txt, 3.txt,папка 2(папка 3(4.txt),папка 4(5.txt, 6.txt)) Такой код: Код
<?php $default_dir = "C://папка 1"; function traverse_dir($dir) { echo "Обход каталога $dir....<br>"; chdir($dir); if(!($dp = opendir($dir))) die("Невозможно открыть каталог $dir."); while($file = readdir($dp)) { if(is_dir($file)) { if($file != '.' && $file != '..') { echo "/$file<br>"; traverse_dir("$dir/$file"); chdir($dir); } } if (is_file($file)) echo "$file<BR>"; } closedir($dp); } traverse_dir($default_dir); ?> Работает так: Заходит в папка 1, потом выводит 1.txt, 2.txt, 3.txt и папка 2 Потом заходит в папка 2, выводит папка 3, заходит в папка 3, выводит 4.txt Дальше код выходит из цикла, дескриптор был 3, стал 2 и код переходит на строку Код
traverse_dir("$dir/$file"); chdir($dir);
0
|
|
04.05.2011, 12:49 | |
Ответы с готовыми решениями:
5
Работа с файлами , хотелось бы с windows system файлами Работа с файлами(Запись,чтение,работа с данными) Лабораторная работа №5. Работа с файлами и алгоритмы сортировки
|
130 / 117 / 30
Регистрация: 14.11.2010
Сообщений: 707
|
||||||
04.05.2011, 13:13 | 2 | |||||
сделай так, chdir тут ни к чему:
0
|
1 / 1 / 1
Регистрация: 13.02.2011
Сообщений: 105
|
|
04.05.2011, 13:17 [ТС] | 3 |
Обход каталога C://папка 1...., а должен это: Обход каталога C://папка 1.... 1.txt 2.txt 3.txt /папка 2 Обход каталога C://папка 1/папка 2.... /папка 3 Обход каталога C://папка 1/папка 2/папка 3.... 4.txt /папка 4 Обход каталога C://папка 1/папка 2/папка 4.... 5.txt 6.txt Но вопрос даже не в этом
0
|
130 / 117 / 30
Регистрация: 14.11.2010
Сообщений: 707
|
||||||
04.05.2011, 13:57 | 4 | |||||
вот рабочий код:
0
|
1 / 1 / 1
Регистрация: 13.02.2011
Сообщений: 105
|
|
04.05.2011, 14:33 [ТС] | 5 |
Но, все равно, мне интересно почему в моем случае происходит так, как я описал выше
0
|
130 / 117 / 30
Регистрация: 14.11.2010
Сообщений: 707
|
|
04.05.2011, 14:41 | 6 |
видимо когда он заходит в папку 3, обрабатывает все файлы которые там есть, потом цикл обрывается и по рекурсии функция возвращает значение дескриптора...
1
|
04.05.2011, 14:41 | |
Помогаю со студенческими работами здесь
6
Работа с файлами Работа с файлами работа с файлами Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |