Generate Readable Byte Labels Using PHP
Whenever you manage disk space, it's infinitely easier to read when when the bytes are displayed in KB, MB, GB... format. When reading files on the disk, the server returns the disk space in bytes so it's on us programmers to program file sizes for display. Using PHP, this task is cake.
function format_bytes($bytes)
{
$labels = array('B','KB','MB','GB','TB');
for($x = 0; $bytes >= 1024 && $x < (count($labels) - 1); $bytes /= 1024, $x++);
return(round($bytes, 2).' '.$labels[$x]);
}
Users will appreciate this!
![Welcome to My New Office]()
My first professional web development was at a small print shop where I sat in a windowless cubical all day. I suffered that boxed in environment for almost five years before I was able to find a remote job where I worked from home. The first...
![Animating CSS3 Transforms with MooTools Fx]()
![HTML5’s placeholder Attribute]()
HTML5 has introduced many features to the browser; some HTML-based, some in the form of JavaScript APIs, but all of them useful. One of my favorites if the introduction of the placeholder attribute to INPUT elements. The placeholder attribute shows text in a field until the...
![Image Reflection with jQuery and MooTools]()
One subtle detail that can make a big difference on any web design is the use of image reflections. Using them too often can become obnoxious but using reflections on large, "masthead" images is a classy enhancement. Unfortunately creating image reflections within your...
I always like using the right-shift operator for this kind of stuff. So instead of:
$bytes /= 1024
I would use:
$bytes >>= 10
Of course, you lost the digits after the decimal point (unless you get fancy), but on the plus side, it’s way faster than floating point division. The shift operators must be some of the loneliest operators in PHP, don’t you think?
Nice one!
I did a similar function … somewhat overkill, but a usefull thing over the years =)
http://openminds.lucido-media.de/human-readable-bytes-sorry-php-net