Как сканировать каталоги внутри каталогов в цикле PHP

1
$dirs = scandir("../public_html/");

$subDirArr=array();

foreach ($dirs as $currentIndex => $currentDir) {


    if (is_dir($currentDir))
        if (!($currentDir[0] == "."))
            echo "<a href='../public_html/$currentDir'>$currentDir</a><br/>";


}

Таким образом, у меня есть этот код, который сканирует мою директорию public_html на моем сервере и выделяет все подкаталоги (но не файлы), так что у меня есть список кликабельных ссылок на мои подкаталоги.

То, что я хочу сделать, - это нажать на один из каталогов, показать его подкаталоги IT (если есть). Я не могу понять, как логически это сделать. Я мог бы написать цикл в цикле внутри цикла и т.д., Но я хочу, чтобы этот код работал независимо от того, сколько каталогов я добавляю.

Как я мог это сделать?

Endgoal должен иметь систему меню для моих хостинг файлов/папок.

Теги:
loops
scandir

1 ответ

0

Что-то вроде этого должно сделать трюк. Вы можете настроить функцию на все необходимое:

function getDirs($root)
{
    foreach (scandir($root) as $dir) {
        if ( ! in_array($dir, ['.', '..'])) {
            $path = realpath($root . DIRECTORY_SEPARATOR . $dir);
            if (is_dir($path)) {
                echo $path . PHP_EOL;
                getDirs($path);
            }
        }
    }
}

getDirs("../public_html/");
  • 0
    Теперь мне просто нужно попытаться понять это ... Я чрезвычайно новичок в PHP: P
  • 0
    @EricDavidSartor programmers.stackexchange.com/questions/25052/… это может помочь вам понять рекурсию

Ещё вопросы

Сообщество Overcoder
Наверх
Меню