[英]PHP Currency formatting trailing zeros
是否可以使用 PHP 格式的貨幣值,例如:$200 將輸出為:$200(不帶小數),但對於 $200.50 這樣的數字,它會正確輸出 $200.50 而不是 $200.5?
謝謝! :)
$num_decimals = (intval($amt) == $amt) ? 0 :2;
print ("$".number_format($amt,$num_decimals);
如果您不介意自己處理貨幣,您可以簡單地在數字上使用以下內容,以獲得正確的輸出。
此解決方案將始終輸出尾隨零(xx.x0 或 xx.00,具體取決於提供的數字)
$number = 1234
sprintf("%0.2f",$number);
// 1234.00
自定義函數如何相應地處理這種情況:
function my_number_format($number) {
if(strpos($number, '.')) {
return number_format($number, 2);
} else {
return $number;
}
}
有幾種方法。 可能最普遍支持和推薦的方法是 sprintf。
sprintf("%01.2f", "200.5"); //200.50
sprintf("%01.2f", "10"); //10.00
number_format 也很好,並且有各種選項,如果需要,它會添加千位分隔符等。
還有一個 money_format 函數,但它在 Windows 服務器上不受支持。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.