What does this code do ? I can't understand the while loop mainly ! mainly can't understand $total--
function getNiceFileSize($file, $digits = 2)
{
if(is_file($file)){
$filePath = $file;
if(!realpath($filePath)){
$filePath = $_SERVER["DOCUMENT_ROOT"] . $filePath;
}
$fileSize = filesize($filePath);
$sizes = array("TB", "GB", "MB", "KB", "B");
$total = count($sizes);
while ($total-- && $fileSize > 1024){
$fileSize /= 1024;
}
return round($fileSize, $digits). " " . $sizes[$total];
}
return false;
}