PHP很简单、快速的格式化文件大小
< ?php function format_filesize($number, $decimals = 3, $force_unit = false, $dec_char = ',', $thousands_char = ' ') { //string format_filesize(int(0,) $number, (bool(0), int(0,4)) $force_unit, int $decimals, char $dec_char, char $thousands_char) //format a filesize $number with unit (setted by $force_unit(see below for the number)) $units = array('B', 'KB', 'MB', 'GB', 'TB'); if($force_unit === false) $unit = floor(log($number, 2) / 10); else $unit = $force_unit; if($unit == 0) $decimals = 0; return number_format($number / pow(1024, $unit), $decimals, $dec_char, $thousands_char).' '.$units[$unit]; } 例子 format_filesize(2540367) => ‘2,423 MB’ format_filesize(2540367, 2) => ‘2,42 MB’ format_filesize(2540367, 1, 1) => ‘2 480,8 KB’ //0=>’B', 1=>’KB’,2=>’MB’, 3=>’GB’, 4=>’TB’ (see $units) format_filesize(2540687367, 2, 1, ‘,’, ‘.’) => ‘2.481.140,01 KB’ log($number, 2) / 10 = log($number, 1024) ?>
收藏此文章 打印 更新 编辑此文章 『关闭窗口』