number_format
愚蠢回合數。有沒有簡單的方法來關閉舍入?我與隨機生成的數字的工作,我能得到的東西像...PHP - number_format默認發出
42533 * 0.003 = 127.599,或
42533 * 0.03 = 1275.99,或者
42533 * 0.3 = 12759.9
我需要number_format(或別的東西)來表示美國傳統格式(逗號分隔數千)和而不是的小數點後的結果。
任何想法?
number_format
愚蠢回合數。有沒有簡單的方法來關閉舍入?我與隨機生成的數字的工作,我能得到的東西像...PHP - number_format默認發出
42533 * 0.003 = 127.599,或
42533 * 0.03 = 1275.99,或者
42533 * 0.3 = 12759.9
我需要number_format(或別的東西)來表示美國傳統格式(逗號分隔數千)和而不是的小數點後的結果。
任何想法?
number_format的第二個參數是數字中的小數位數。最簡單的方法是將其視爲字符串(按照this question)。傳統的美國格式是默認行爲,所以你不需要指定剩餘的參數。
$num_decimals = strlen(substr(strrchr($number, "."), 1));
$formatted_number = number_format($number, $num_decimals);
如果有人對此感興趣,我寫了一個小函數來解決這個問題。
以信譽喬爾·欣茨上面,我想出了...
function number_format_with_decimals($value, $round_to){
//$value is the decimal number you want to show with number_format.
//$round_to is the deicimal place value you want to round to.
$round_to_decimals = strlen(substr(strrchr($value, "."), $round_to));
$ans = number_format($value, $round_to);
return $ans;
}
我嘗試了這些解決方案,但什麼結束了我的回答是這樣的:
$output=money_format('%!i', $value);
這給了你類似3,234.90而不是3,234或3,234.9
您能否請添加預期結果? –
@AmalMurali:我希望** 12759.9 **顯示爲** 12,759.9 **。 – gtilflm