Как вывести список всех папок и подпапок в директории на php?

Пользователь

от ransom_homenick , в категории: PHP , год назад

Как вывести список всех папок и подпапок в директории на php?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от adrien.waters , год назад

@ransom_homenick 

Вы можете использовать рекурсивную функцию для вывода списка всех папок и подпапок в директории на PHP. Ниже приведен пример такой функции:

1
2
3
4
5
6
7
function listFolders($dir){
    $folders = glob($dir . '/*', GLOB_ONLYDIR);
    foreach($folders as $folder){
        echo $folder . '<br>';
        listFolders($folder);
    }
}


В этой функции мы используем функцию glob() для получения списка папок в указанной директории. Затем мы проходим по этому списку и выводим имя каждой папки с помощью echo. Затем мы вызываем эту же функцию для каждой папки, чтобы вывести все ее подпапки рекурсивно.


Чтобы вызвать эту функцию для конкретной директории, вы можете использовать следующий код:

1
2
$dir = 'путь/к/директории';
listFolders($dir);


Обратите внимание, что эта функция выводит только имена папок, а не полный путь к ним. Если вам нужно получить полный путь, вы можете использовать функцию realpath() или добавить путь к имени папки внутри цикла.