What?
Just a quick note on how to format a given filesize and to reduce the display output to a small string, eg:

   196 bytes          : displays as => "196 bytes"
   12945 bytes        : displays as => "12 Kb"
   1478515 bytes      : displays as => "1 Mb"
   8798745455 bytes   : displays as => "8 Gb"

How?
Source: PHP Share: http://www.phpshare.org
function formatSizeUnits($bytes)
    {
        if ($bytes >= 1073741824)
        {
            $bytes = number_format($bytes / 1073741824, 2) . ' GB';
        }
        elseif ($bytes >= 1048576)
        {
            $bytes = number_format($bytes / 1048576, 2) . ' MB';
        }
        elseif ($bytes >= 1024)
        {
            $bytes = number_format($bytes / 1024, 2) . ' KB';
        }
        elseif ($bytes > 1)
        {
            $bytes = $bytes . ' bytes';
        }
        else
        {
            $bytes = '0 bytes';
        }

        return $bytes;
}


Inline without a function
Source: Joes Brain: http://www.joellipman.com
if ($this_file_size >= 1073741824)
	$this_file_size = number_format($this_file_size / 1073741824, 1) . ' GB';
elseif ($this_file_size >= 1048576)
	$this_file_size = number_format($this_file_size / 1048576, 1) . ' MB';
elseif ($this_file_size >= 1024)
	$this_file_size = number_format($this_file_size / 1024, 1) . ' KB';
elseif ($this_file_size > 1)
	$this_file_size = $this_file_size . ' bytes';
elseif ($this_file_size == 1)
	$this_file_size = $this_file_size . ' byte';
else
	$this_file_size = '0 bytes';

Add comment


Send