メモ。
function getFileSizeUnit($fsize) { $cnt = 0; $buf = 0; $unit = array('B', 'KB', 'MB', 'GB', 'TB'); while(1) { if($cnt > count($unit) - 1) { $cnt = 9999; break; } if(!isset($s)) $s = $fsize; $sbuf = 1; $sbuf = floor($s / 1024); if($sbuf < 1){ $fs = $s + round(($fsize - ($s * pow(1024, $cnt))) / pow(1024, $cnt), 1); $fs .= $unit[$cnt]; break; }else{ $s = $sbuf; } $cnt ++; } return $fs; }
ファイルサイズ(数値)を渡すと単位付きで返却してくれる。