{% else-1 %}
Функция на PHP определяет размер указанного каталога, включая все подкаталоги в байтах

                        
<?php
function DirSize($path){
/*
$path - полный путь к директории
*/ $returnSize=0;
//Функция opendir возвращает список с содержимым указанного каталога.
if (!$h = @opendir($path)) return false;
/*
В цикле при помощи функции readdir последовательно
обрабатываем каждый элементы каталога.
*/while (($element = readdir($h)) !== false) {
//Исключаем директории "." и ".."
if ($element<>"." and $element<>".."){
//Полний путь к обрабатываемому элементу(файл/папка) $all_path = $path."/".$element;
/*
Если текущий элемент - файл, определяем его размер с помощью filesize() и суммируем его к переменой $returnSize
*/
if (@filetype($all_path)=="file"){ $returnSize+=filesize($all_path); /* Если текущий элемент - каталог, функция вызывает саму себя, результат суммируется к переменой $returnSize
*/ }elseif (@filetype($all_path)=="dir"){ @$returnSize+=DirSize($all_path); }
}
}
closedir($h); return $returnSize; } ?>



Вызов функции, в качестве единственного параметра нужно указать полный путь до каталога:
print DirSize("Полный путь до каталога"); ?
1 15 0
Без комментариев...