note 50631 added to function.filesize
| From: | hervardatgmailcom at osu1 dot php dot net | Date: | Sat, 05 Mar 2005 08:21:15 +0000 |
| Subject: | note 50631 added to function.filesize | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-85960@lists.php.net to get a copy of this message | ||
Here's a set of functions that will give you a human-readable file size (I didn't write
the first function, but I did the second one). compute_size() will take a byte number and spit out
an easier-to-read version.
<?php
function truncate_decimals ($num) {
$shift = pow(10, 2);
return ((floor($num * $shift)) / $shift);
}
function compute_size ($byte_number) {
if ($byte_number < 1024) {
return $byte_number.' bytes';
} elseif ($byte_number < 1048576) {
return truncate_decimals($byte_number / (1024)).' KB';
} elseif ($byte_number < 1073741824) {
return truncate_decimals($byte_number / (1048576)).' MB';
} elseif ($byte_number < 1099511627776) {
return truncate_decimals($byte_number / (1073741824)).' GB';
}
}
?>
For example, compute_size(230877) will return "225.46 KB" and compute_size(23935772) will
return "22.82 MB". I think I've done the maths right.
----
Manual Page -- http://www.php.net/manual/en/function.filesize.php
Edit -- http://master.php.net/manage/user-notes.php?action=edit+50631
Delete: added to the manual -- http://master.php.net/manage/user-notes.php?action=delete+50631&report=yes&reason=added+to+the+manual
Delete: bad code -- http://master.php.net/manage/user-notes.php?action=delete+50631&report=yes&reason=bad+code
Delete: spam -- http://master.php.net/manage/user-notes.php?action=delete+50631&report=yes&reason=spam
Delete: useless -- http://master.php.net/manage/user-notes.php?action=delete+50631&report=yes&reason=useless
Delete: other reasons -- http://master.php.net/manage/user-notes.php?action=delete+50631&report=yes
Reject -- http://master.php.net/manage/user-notes.php?action=reject+50631&report=yes
Search -- http://master.php.net/manage/user-notes.php