Задать вопрос

Как вывести структуру директорий в виде дерева?

Здравствуйте. С помощью команды shell_exec("tar tf archive.tar.gz"); получаю список следующего вида:
archive/bin/log.xml
archive/build.txt
archive/help/ReferenceCard.pdf
archive/help/ReferenceCardForMac.pdf
archive/lib/alloy.jar
archive/lib/annotations.jar
archive/lib/asm-all.jar
archive/lib/automaton.jar
archive/lib/batik-all.jar
archive/lib/bcprov-jdk15on-155.jar
archive/lib/boot.jar

Вопрос: как можно вывести его в виде дерева файлов так, как показано на скрине?
3a0973b2130f40af9fc09f40d07298ed.jpg
Насколько я понимаю, можно для начала разбить вывод команды на элементы массива
$list = shell_exec("tar tf archive.tar.gz");
$arr = explode (PHP_EOL,$list);

А вот как реализовать "принадлежность" файла или каталога к другому каталогу - непонятно.
  • Вопрос задан
  • 275 просмотров
Подписаться 1 Оценить 2 комментария
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
nested sets, рекурсивные функции.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы