webForumDet fria alternativet

Katalogstorlek

5 svar · 276 visningar · startad av sailsoft

sailsoftMedlem sedan juli 2001225 inlägg
#1

Hur tar man enklast ut en katalogs storlek i bytes?

QimenMedlem sedan juni 20015 009 inlägg
#2
<?php
function dirsize($dirName = '.') 
{
     $dir_ = dir($dirName);
     $size = 0;

     while($file = $dir->read())
     {
          if ($file != '.' && $file != '..')
          {
               if (is_dir($file))
               {
                    $size += dirsize($dirName . '/' . $file);
               } else {
                    $size += filesize($dirName . '/' . $file);
               }
          }
     }
     $dir->close();
     return $size;
}
?>

:)

sailsoftMedlem sedan juli 2001225 inlägg
#3

Jag får felet:

Fatal error: Call to a member function read() on a non-object

Vad är fel på skriptet? Eller är det något fel hos mig?

oHLLeMedlem sedan nov. 2002302 inlägg
#4

Jag tror det ska vara $dir_->read() i while-loopen istället för $dir->read() och $dir_->close(); istället för $dir->close();

sailsoftMedlem sedan juli 2001225 inlägg
#5

Nu funkade det, men jag får inte skriptet att visa alla katalogerna, vilken user är man när man kör ett skript, kan det vara så att katalogerna har skapats med en högre användarrättighet?

oHLLeMedlem sedan nov. 2002302 inlägg
#6

Jag är ingen höjdare på det där med användarrättigheter, brukar jämt krångla för mig. Men det skulle nog kunna vara något sådant.

133 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)