Мне нужно получить общее количество файлов JPG в указанном каталоге, включая ВСЕ его подкаталоги. Нет подкаталогов.
Структура выглядит следующим образом:
dir1/ 2 files subdir 1/ 8 files
всего dir1= 10 файлов
dir2/ 5 files subdir 1/ 2 files subdir 2/ 8 files
всего dir2= 15 файлов
У меня есть эта функция, которая не работает нормально поскольку он подсчитывает файлы только в последнем подкаталоге, а общее количество файлов в 2 раза больше, чем фактическое количество файлов. (будет выводить 80, если у меня есть 40 файлов в последнем подкаталоге)
public function count_files($path) {
global $file_count;
$file_count = 0;
$dir = opendir($path);
if (!$dir) return -1;
while ($file = readdir($dir)) :
if ($file == '.' || $file == '..') continue;
if (is_dir($path . $file)) :
$file_count += $this->count_files($path . "/" . $file);
else :
$file_count++;
endif;
endwhile;
closedir($dir);
return $file_count;
}