|
|
|
| На какой логике можно написать скрипт который посчитает размер всего сайта ( в байтах ), т.е. сумму ( байтов ) всех файлов в каждой папке ..? | |
|
|
|
|
|
|
|
для: Коляка
(06.02.2006 в 00:09)
| | Нужно рекурсивно зайти во все папки и к общей переменной прибавить значение размера каждого файла в папке. | |
|
|
|
|
|
|
|
|
для: cheops
(06.02.2006 в 13:55)
| | Нашел на форуме вот такой скрипт
<?php
scan_dir(".");
//////////////////////////////////////////////////////////
// Рекурсивная функция - спускаемся вниз по каталогу
//////////////////////////////////////////////////////////
function scan_dir($dirname)
{
// Открываем текущую директорию
$dir = opendir($dirname);
// Читаем в цикле директорию
while (($file = readdir($dir)) !== false)
{
// Если файл обрабатываем его содержимое
if($file != "." && $file != "..")
{
// Если имеем дело с файлом - регистрируем его
if(is_file($dirname."/".$file))
{
$sizee = filesize($dirname."/".$file)."<br>";
echo $sizee ;
}
// Если перед нами директория, вызываем рекурсивно
// функцию scan_dir
if(is_dir($dirname."/".$file))
{
scan_dir($dirname."/".$file);
}
}
}
// Закрываем директорию
closedir($dir);
}
?>
|
Выводит все размеры (байты), но как их между собой сложить и получить одну цифру ? ...
Пока понять не могу ... помогите ... | |
|
|
|
|
|
|
|
для: Коляка
(07.02.2006 в 01:17)
| | Обычно, чтобы не мучатся, переменную $sizee объявляют глобальной
<?php
$sizee = 0;
scan_dir(".");
echo $sizee;
//////////////////////////////////////////////////////////
// Рекурсивная функция - спускаемся вниз по каталогу
//////////////////////////////////////////////////////////
function scan_dir($dirname)
{
global $sizee;
// Открываем текущую директорию
$dir = opendir($dirname);
// Читаем в цикле директорию
while (($file = readdir($dir)) !== false)
{
// Если файл обрабатываем его содержимое
if($file != "." && $file != "..")
{
// Если имеем дело с файлом - регистрируем его
if(is_file($dirname."/".$file))
{
$sizee += filesize($dirname."/".$file)."<br>";
}
// Если перед нами директория, вызываем рекурсивно
// функцию scan_dir
if(is_dir($dirname."/".$file))
{
scan_dir($dirname."/".$file);
}
}
}
// Закрываем директорию
closedir($dir);
}
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(07.02.2006 в 03:46)
| | Спасибо, огромное ... | |
|
|
|