Ajvengo, Вам надо использовать рекурсию.
<?php
function scan_dir($dirname)
{
// Объявляем переменные замены глобальными
GLOBAL $count_files, $count_dirs;
// Открываем текущую директорию
$dir = opendir($dirname);
// Читаем в цикле директорию
while (($file = readdir($dir)) !== false)
{
// Если файл обрабатываем его содержимое
if($file != "." && $file != "..")
{
// Если имеем дело с файлом - производим в нём замену
if(is_file($dirname."/".$file))
{
$count_files++;
}
// Если перед нами директория, вызываем рекурсивно
// функцию scan_dir
if(is_dir($dirname."/".$file))
{
$count_dirs++;
scan_dir($dirname."/".$file);
}
}
}
// Закрываем директорию
closedir($dir);
}
?> Как вызвать:
<?
$dirname = "./"; // Текущая директория
scan_dir($dirname); // Вызов рекурсивной функции
echo "Всего папок: $count_dirs <br/> ";
echo "Всего файлов: $count_files <br/> ";
?>
http://www.labnit.ru - Лаборатория Новых Информационных Технологий