這段代碼讀取文件的大小,但1.759864Mb文件的輸出將爲1Mb,我希望它是2Mb。我知道這是要改變一個小東西,但我找不到它是什麼......PHP - Round number
function Size($path)
{
$bytes = sprintf('%u', filesize($path));
if ($bytes > 0)
{
$unit = intval(log($bytes, 1024));
$units = array('B', 'Kb', 'Mb', 'Gb');
if (array_key_exists($unit, $units) === true)
{
return sprintf('%d %s', $bytes/pow(1024, $unit), $units[$unit]);
}
}
return $bytes;
}
謝謝,成功了!雖然我用圓而不是ceil。 – user495915 2012-07-22 15:49:28
小心一輪,我在回答中選擇了它,但選擇了刪除,它可以是非常有用的,但很疲憊,就好像你試圖顯示7.3MB的文件需要多少磁盤空間並且用戶有7.0MB自由和你的程序輸出7MB所需,因爲它向下舍入用戶將沒有足夠的空間。然而,如果你是安全的並且總是四捨五入(通過使用ceil),用戶將始終被告知上限。 – 2012-07-22 15:52:45
圓是否能夠做地板以及ceil?我並不認爲這是事實,我知道你可以控制它如何縮小一半,但是你不能覆蓋例如7.3或7.7的默認舍入,它們總是舍入或捨棄。 – 2012-07-22 15:55:28