Реклама на сайте Advertise with us

PHP: Построение структуры каталогов.

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:

kernel-video-sharing.com

С нами с 02.11.03
Сообщения: 824
Рейтинг: 558

Ссылка на сообщениеДобавлено: 30/09/05 в 11:44       Ответить с цитатойцитата 

Нужен скрипт который выведет названия файлов (с путями) всех файлов относительно заданного каталога, включая подкаталоги, т.е. нужно дерево файлов построить.
Если у кого есть под рукой уже написанный - поделитесь плиз, писать самому лень icon_smile.gif

0
 



С нами с 03.02.03
Сообщения: 386
Рейтинг: 77

Ссылка на сообщениеДобавлено: 30/09/05 в 12:04       Ответить с цитатойцитата 

Код:
$x=0;
if ($dir = @opendir("folder/")) {

  while (($file = readdir($dir)) !== false) {
if ($file<>"." and $file<>".."){
   $pathb[$x]=$file;
   $x++;
}
  } 

  closedir($dir);

}

В массиве $pathb имеешь все файлы и каталоги из "folder/"
дальше в цикле проходишь вложенные каталоги и все

2
 

kernel-video-sharing.com

С нами с 02.11.03
Сообщения: 824
Рейтинг: 558

Ссылка на сообщениеДобавлено: 30/09/05 в 12:08       Ответить с цитатойцитата 

Modor писал:
В массиве $pathb имеешь все файлы и каталоги из "folder/"
дальше в цикле проходишь вложенные каталоги и все


Мне нужно для любого уровня вложенности icon_smile.gif С рекурсией то бишь.

0
 



С нами с 10.09.03
Сообщения: 1313
Рейтинг: 513

Ссылка на сообщениеДобавлено: 30/09/05 в 13:41       Ответить с цитатойцитата 

Можно парсить результаты выполнения
`ls -aA1R`

1
 



С нами с 01.04.04
Сообщения: 354
Рейтинг: 278

Ссылка на сообщениеДобавлено: 30/09/05 в 14:24       Ответить с цитатойцитата 

Можешь конечно доработать как тебе нада:
Код:


function getFiles($directory) {
   // Try to open the directory
   if($dir = opendir($directory)) {
       // Create an array for all files found
       $tmp = Array();

       // Add the files
       while($file = readdir($dir)) {
           // Make sure the file exists
           if($file != "." && $file != ".." && $file[0] != '.') {
               // If it's a directiry, list all files within it
               if(is_dir($directory . "/" . $file)) {
                   $tmp2 = getFiles($directory . "/" . $file);
                   if(is_array($tmp2)) {
                       $tmp = array_merge($tmp, $tmp2);
                   }
               } else {
                   array_push($tmp, $directory . "/" . $file);
               }
           }
       }

       // Finish off the function
       closedir($dir);
       return $tmp;
   }
}

// Example of use
print_r(getFiles('.')); // This will find all files in the current directory and all subdirectories

Купи/продай свой траффик ICOOCASH2

3
 

kernel-video-sharing.com

С нами с 02.11.03
Сообщения: 824
Рейтинг: 558

Ссылка на сообщениеДобавлено: 30/09/05 в 15:50       Ответить с цитатойцитата 

vlm писал:
Можешь конечно доработать как тебе нада:


Спасибо. Думаю пойдет icon_smile.gif Будем считать тему закрытой.

0
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »