note 92418 modified in function.filesize by thiago

From: Date: Thu, 23 Jul 2009 17:29:17 +0000
Subject: note 92418 modified in function.filesize by thiago
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-158647@lists.php.net to get a copy of this message
This is an updated version of my previous filesize2bytes. The return type now it's really an int. <?php /** * Converts human readable file size (e.g. 10 MB, 200.20 GB) into bytes. * * @param string $str * @return int the result is in bytes * @author Svetoslav Marinov * @author http://slavi.biz */ function filesize2bytes($str) { $bytes = 0; $bytes_array = array( 'B' => 1, 'KB' => 1024, 'MB' => 1024 * 1024, 'GB' => 1024 * 1024 * 1024, 'TB' => 1024 * 1024 * 1024 * 1024, 'PB' => 1024 * 1024 * 1024 * 1024 * 1024, ); $bytes = floatval($str); if (preg_match('#([KMGTP]?B)$#si', $str, $matches) && !empty($bytes_array[$matches[1]])) { $bytes *= $bytes_array[$matches[1]]; } $bytes = intval(round($bytes, 2)); return $bytes; } ?> --was-- This is an updated version of my previous filesize2bytes. The return type now it's really an int. <?php /** * Converts human readable file size (e.g. 10 MB, 200.20 GB) into bytes. * * @param string $str * @return int the result is in bytes * @author Svetoslav Marinov * @author http://slavi.biz */ function filesize2bytes($str) { $bytes = 0; $bytes_array = array( 'B' => 1, 'KB' => 1024, 'MB' => 1024 * 1024, 'GB' => 1024 * 1024 * 1024, 'TB' => 1024 * 1024 * 1024 * 1024, 'PB' => 1024 * 1024 * 1024 * 1024 * 1024, ); $bytes = floatval($str); if (preg_match('#([KMGTP]?B)$#si', $str, $matches) && !empty($bytes_array[$matches[1]])) { $bytes *= $bytes_array[$matches[1]]; } $bytes = intval(round($bytes, 2)); return $bytes; } ?> http://php.net/manual/en/function.filesize.php

« previous php.notes (#158647) next »