PHP считала подкаталоги и цикл через файлы как к?

Я должен создать цикл через все файлы в подкаталогах. Можете Вы помогать мне структура мой код как это:

$main = "MainDirectory";
loop through sub-directories {
    loop through filels in each sub-directory {
        do something with each file
    }
};
46
задан vinzee 3 May 2019 в 13:48
поделиться

3 ответа

используйте RecursiveDirectoryIterator совместно с RecursiveIteratorIterator.

$di = new RecursiveDirectoryIterator('path/to/directory');
foreach (new RecursiveIteratorIterator($di) as $filename => $file) {
    echo $filename . ' - ' . $file->getSize() . ' bytes <br/>';
}
141
ответ дан 26 November 2019 в 20:00
поделиться

Вероятно, вы захотите использовать для этого рекурсивную функцию, в случае, если в ваших подкаталогах есть подкаталоги

$main = "MainDirectory";

function readDirs($main){
  $dirHandle = opendir($main);
  while($file = readdir($dirHandle)){
    if(is_dir($main . $file) && $file != '.' && $file != '..'){
       readDirs($file);
    }
    else{
      //do stuff
    }
  } 
}

не проверяли код, но это должно быть близко к тому, что вы хотите.

.
10
ответ дан 26 November 2019 в 20:00
поделиться

Давайте, сначала попробуйте сами!

Что вам нужно:

scandir()
is_dir()

и конечно foreach

http://php.net/manual/en/function.is-dir.php

http://php.net/manual/en/function.scandir.php

4
ответ дан 26 November 2019 в 20:00
поделиться
Другие вопросы по тегам:

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