Autor Zpráva
VP
Profil *
nevíte někdo, jak zjistit velikost celého adresáře? tedy souborů v něm? počítám že cyklem který je zapíše do pole a pak pomocí filesize seččte u všech velikosti, ale nevim jak to napsat. jestli by někdo byl ochotnej sem dát nějakej php script tak by mi to hodně pomohlo...
díky.
error414-
Profil *
http://cz.php.net/manual/cs/function.filesize.php je to v ukazkach

unction get_size($path)
{
if(!is_dir($path)) return filesize($path);
if ($handle = opendir($path)) {
$size = 0;
while (false !== ($file = readdir($handle))) {
if($file!='.' && $file!='..'){
$size += filesize($path.'/'.$file);
$size += get_size($path.'/'.$file);
}
}
closedir($handle);
return $size;
}
}
betasoft
Profil *
mno, nevim čim to ale zkusil jsem to a udává to velikost větší než je a to o 2 MB
Leo
Profil
Nemuzete to scitat jako hruska a jablka - co je podle vas celkova velikost adresare? Leo
betasoft
Profil *
ee, funguje to nějak divně... velikost souborů to počítá hondě špatně... přidám do složky která měla size 3.8 MB soubor o velikosti 1.31 MB a výsledná velikost je 5.84 MB... nevíte někdo proč?
betasoft
Profil *
potřebuju prostě zjisti velikost všech souborů v adresáři...
betasoft
Profil *
nemáte někdo nějakej jinej způsob?
betasoft
Profil *
ok, už to funguje... použil jsem akorát jinej příklad... tak pro všechny který by to zajímalo do budoucna tak je to takhle...



<?php
$kb="1024";
$path="./pics/fotky/";
function get_size($path)
{
if(!is_dir($path))return filesize($path);
$dir = opendir($path);
while($file = readdir($dir))
{
if(is_file($path."/".$file))$size+=filesize($path."/".$file);
if(is_dir($path."/".$file) && $file!="." && $file !="..")$size +=get_size($path."/".$file);

}
return $size;
}
echo get_size($path)/$kb/$kb;
?>
betasoft
Profil *
a ještě líp spíš takhle...

<?php
$path="./pics/fotky/";
function get_size($path)
{
if(!is_dir($path))return filesize($path);
$dir = opendir($path);
while($file = readdir($dir))
{
if(is_file($path."/".$file))$size+=filesize($path."/".$file);
if(is_dir($path."/".$file) && $file!="." && $file !="..")$size +=get_size($path."/".$file);

}
printf("%5.2f", $size/1024/1024);
}
echo get_size($path);
?>
Toto téma je uzamčeno. Odpověď nelze zaslat.

0