mcfalu
Новичок
вопрос про подсчет размера указанной директории
есть не хитрый скрипт который рекурсивно подсчитывает размер папки и всех её подпапок и возвращает результат.
В принципе размер директории = это сумма размеров всех файлов в ней, а также файлов в подпапках этой папки
Интересует следующие - почему в *nix в этом месте
return $size+filesize($path)
filesize($path) - возвращает одинаковое значение для разных директорий 4096 bytes
Что это за число 4096 ? Откуда оно берется?
Если к примеру в папке нету файлов то функция вернет именно значение 4096 bytes
есть не хитрый скрипт который рекурсивно подсчитывает размер папки и всех её подпапок и возвращает результат.
PHP:
function getDirSize($path)
{
if(is_file($path)) return filesize($path);
$size=0;
$dh=opendir($path);
while(($file=readdir($dh))!==false)
{
if($file=='.' || $file=='..') continue;
if(is_file($path.'/'.$file))
$size+=filesize($path.'/'.$file);
else $size+=$this->getDirSize($path.'/'.$file);
}
closedir($dh);
return $size+filesize($path); // +filesize($f) for *nix directories
}
Интересует следующие - почему в *nix в этом месте
return $size+filesize($path)
filesize($path) - возвращает одинаковое значение для разных директорий 4096 bytes
Что это за число 4096 ? Откуда оно берется?
Если к примеру в папке нету файлов то функция вернет именно значение 4096 bytes
