PHP

Печать дерева каталогов файловой системы

Пример формирует дерево каталогов файловой системы на PHP
<?php
// Печать дерева каталогов файловой системы.
// Функция распечатывает имена всех подкаталогов в текущем каталоге,
// выполняя рекурсивный обход. Параметр $level задает текущую
// глубину рекурсии.
function printTree($level=1) {
  // Открываем каталог и выходим в случае ошибки.
  $d = @opendir("."); 
  if (!$d) return;
  while (($e=readdir($d)) !== false) {
    // Игнорируем элементы .. и .
    if ($e=='.' || $e=='..') continue;
    // Нам нужны только подкаталоги.
    if (!@is_dir($e)) continue;
    // Печатаем пробелы, чтобы сместить вывод.
    for ($i=0; $i<$level; $i++) echo "  ";
    // Выводим текущий элемент.
    echo "$e\n";
    // Входим в текущий подкаталог и печатаем его
    if (!chdir($e)) continue;
    printTree($level+1);
    // Возвращаемся назад
    chdir("..");
    // Отправляем данные в браузер, чтобы избежать видимости зависания
    // для больших распечаток.
    flush();
  }
  closedir($d);
}

// Выводим остальной текст фиксированным шрифтом
echo "<pre>";
echo "/\n";
// Входим в корневой каталог и печатаем его
chdir($_SERVER['DOCUMENT_ROOT']);
PrintTree();
echo "</pre>
<div id='r7'>
</div>
";
?>
Добавлено: 24 Августа 2013 02:22:04 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...