我已經在MySql中存儲了總數為(十進制16,2)1423.28 我做了一些計算后從PHP中得到了顯示: function calculate_balance($total){ //get total paid from another function $total_paid = ... if ($total_paid == 0){ return $total; }else{ return $total-$total_paid } } $balance = calculate_balance($total); echo number_format($balance, 2); //returns 1.00 我已嘗試 number_format((float)$balance, 2); number_format(floatval($balance), 2); 更新 var_dump($balance) 我得到了以下輸出。 string(8) "1,423.28" float(152) string(6) "252.00" string(6) "247.50" string(6) "247.50" string(6) "247.50" string(6) "549.90" string(6) "495.00" float(0) string(6) "284.76" float(265) 對于小于1,000的值,它在沒有number_format()的情況下工作正常。 例如:如果余額等于252.00 echo $balance; 輸出 252.00 您的函數返回1,423.28?這不是浮點型,因為浮點型從不包含逗號作為千位分隔符。 PHP將其解釋為1,因為它在逗號處"中斷"。 去掉逗號就可以了! $balance = str_replace(',', '', $balance); |
免責聲明:本站部分文章和圖片均來自用戶投稿和網絡收集,旨在傳播知識,文章和圖片版權歸原作者及原出處所有,僅供學習與參考,請勿用于商業(yè)用途,如果損害了您的權利,請聯(lián)系我們及時修正或刪除。謝謝!
始終以前瞻性的眼光聚焦站長、創(chuàng)業(yè)、互聯(lián)網等領域,為您提供最新最全的互聯(lián)網資訊,幫助站長轉型升級,為互聯(lián)網創(chuàng)業(yè)者提供更加優(yōu)質的創(chuàng)業(yè)信息和品牌營銷服務,與站長一起進步!讓互聯(lián)網創(chuàng)業(yè)者不再孤獨!
掃一掃,關注站長網微信