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 :: Директории( файлы) в ассоциативный массив. Подскажите -Please.
Покинул форум
Сообщений всего: 5
Дата рег-ции: Июль 2015
Помог: 0 раз(а)
Задача следующая:
Есть директория (локальная) с большим количеством вложенных папок и фалов. Нужно сделать аналогичную структуру папок/файлов в Ecxel(для их последующей группировки) по средствам PHP (только PHP, VBA - хоть и легче но не подходит увы), т.е имеем как пример структуру на рис.1
результат как на рис.2
/* Выводим, делая заданный отступ, название директории */
echo$space.$file."<br />";
/* С помощью рекурсии выводим содержимое полученной директории */
showTree($f0,$space.'  ');
}
/* Если это файл, то просто выводим название файла */
elseecho$space.$file."<br />";
}
}
/* Запускаем функцию для текущего каталога */
showTree("./","");
2. Полученный асоц.массив с помощью библ. PHPEcxel привести в нужный вид на Листе.
Подскажите: Есть ли альтернативное решение обхода структуры файлов и запихнуть их имена в ac.массив так чтобы получилось следующее (может библиотеки какие - то):
[каталог1 => [папка, файл, [папка,файл,файл]], file1 => файл, и т.п]
3. Или более подходящий метод выполнения задачи в целом.
Спасибо. Прикреплено изображение (Нажмите для увеличения)
Vendor
Отправлено: 26 Июля, 2015 - 18:18:09
Новичок
Покинул форум
Сообщений всего: 5
Дата рег-ции: Июль 2015
Помог: 0 раз(а)
2 рис Прикреплено изображение (Нажмите для увеличения)
Deonis
Отправлено: 26 Июля, 2015 - 18:49:43
Посетитель
Покинул форум
Сообщений всего: 298
Дата рег-ции: Нояб. 2009
Помог: 14 раз(а)
Vendor пишет:
Есть ли альтернативное решение обхода структуры файлов
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.