jonathangreen
13 years ago
1 changed files with 33 additions and 0 deletions
@ -0,0 +1,33 @@
|
||||
<?php |
||||
|
||||
/** |
||||
* Convert bytes to human readable format |
||||
* |
||||
* @param integer bytes Size in bytes to convert |
||||
* @return string |
||||
*/ |
||||
function islandora_convert_bytes_to_human_readable($bytes, $precision = 2) |
||||
{ |
||||
$kilobyte = 1024; |
||||
$megabyte = $kilobyte * 1024; |
||||
$gigabyte = $megabyte * 1024; |
||||
$terabyte = $gigabyte * 1024; |
||||
|
||||
if (($bytes >= 0) && ($bytes < $kilobyte)) { |
||||
return $bytes . ' B'; |
||||
|
||||
} elseif (($bytes >= $kilobyte) && ($bytes < $megabyte)) { |
||||
return round($bytes / $kilobyte, $precision) . ' KB'; |
||||
|
||||
} elseif (($bytes >= $megabyte) && ($bytes < $gigabyte)) { |
||||
return round($bytes / $megabyte, $precision) . ' MB'; |
||||
|
||||
} elseif (($bytes >= $gigabyte) && ($bytes < $terabyte)) { |
||||
return round($bytes / $gigabyte, $precision) . ' GB'; |
||||
|
||||
} elseif ($bytes >= $terabyte) { |
||||
return round($bytes / $terabyte, $precision) . ' TB'; |
||||
} else { |
||||
return $bytes . ' B'; |
||||
} |
||||
} |
Loading…
Reference in new issue