Scripts
Check map grootte
Deze kwam ik nog tegen, dacht misschien kan iemand hem hier gebruiken. Dit script kijkt hoe groot een map is, daarna kan je controleren of de map te groot is en bijv een mail sturen naar de gebruiker.
grote.php
<?php
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";
}
}
// Verander hier het pad naar de juiste map
$path= "/var/www/htdocs";
$ar=getDirectorySize($path);
echo "<h4>Details over map : ".$path."</h4>";
echo "Total groote : ".sizeFormat($ar['size'])."<br>";
echo "Aantal bestanden : ".$ar['count']."<br>";
echo "Aantal mappen : ".$ar['dircount']."<br>";
/* Controleer of gebruiker over zijn 150mb is
if($ar['size'] > '157286400') {
echo "Map groter dan 150mb";
} else {
echo "Map is kleiner als 150 mb";
*/
?>
Reacties
0