Autor Zpráva
lukaszafer
Profil
Takže ahoj,
Chtěl bych se zeptat jednou jsem někde našel prostě čistě náhodou jsem brouzdal po internetu a našel jsem PHP script který měl za úkol no spíš vypočítal mi kolik mam zaplněno na FTP včetně adresářu apod.. nevíte někdo o tom něco nebo neuměl by ho nikdo napsat ?

V réalu to funguje

mujweb.cz/velikost.php

A vypíše to třeba

Zaplněno - 455 MB ... stačí mi pohodí tohle

.. Děkuji Lukáš
panther
Profil
lukaszafer
nebo neuměl by ho nikdo napsat ?
to je spíše do sekece „Práce a zakázky
lukaszafer
Profil
ok .. tak díky ...
Jan Tvrdík
Profil
to je spíše do sekece „Práce a zakázky“
Za tak tupý skript snad nikdo nebude chtít pěníze. Vždyť jde o obyčejnou rekurzi.
Následuje řešení tupě zkopírované z http://www.go4expert.com/forums/showthread.php?t=290
<?php
// From: http://www.go4expert.com/forums/showthread.php?t=290
function getDirectorySize($path) 
{ 
  $totalsize = 0; 
  $totalcount = 0; 
  $dircount = 0; 
  if ($handle = opendir ($path)) 
  { 
    while (false !== ($file = readdir($handle))) 
    { 
      $nextpath = $path . '/' . $file; 
      if ($file != '.' && $file != '..' && !is_link ($nextpath)) 
      { 
        if (is_dir ($nextpath)) 
        { 
          $dircount++; 
          $result = getDirectorySize($nextpath); 
          $totalsize += $result['size']; 
          $totalcount += $result['count']; 
          $dircount += $result['dircount']; 
        } 
        elseif (is_file ($nextpath)) 
        { 
          $totalsize += filesize ($nextpath); 
          $totalcount++; 
        } 
      } 
    } 
  } 
  closedir ($handle); 
  $total['size'] = $totalsize; 
  $total['count'] = $totalcount; 
  $total['dircount'] = $dircount; 
  return $total; 
} 

function sizeFormat($size) 
{ 
    if($size<1024) 
    { 
        return $size." bytes"; 
    } 
    else if($size<(1024*1024)) 
    { 
        $size=round($size/1024,1); 
        return $size." KB"; 
    } 
    else if($size<(1024*1024*1024)) 
    { 
        $size=round($size/(1024*1024),1); 
        return $size." MB"; 
    } 
    else 
    { 
        $size=round($size/(1024*1024*1024),1); 
        return $size." GB"; 
    } 

} 

$path = dirname(__FILE__); 
$ar=getDirectorySize($path); 

echo "<h4>Details for the path : $path</h4>"; 
echo "Total size : ".sizeFormat($ar['size'])."<br>"; 
echo "No. of files : ".$ar['count']."<br>"; 
echo "No. of directories : ".$ar['dircount']."<br>"; 
?>
stepi15
Profil
neslo by aji nejak zjistit kolik je volne podle tarifu nebo tak neco?

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: