84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
直接浮点数计算,有时候得出科学计数来,懵了!然后找文档看到了bcdiv 等等说是高精度计算!$integral_money = bcdiv(10, 500);bcdiv(10, 500, 2); 得出了0.02 这不限制死了吗? 那是不是我所有计算我都要给一个小数位???结果等于0 这不坑我吗?明明等于0.02好不好!为毛要给我等于0!好吧,我把浮点数 X 100出来再来计算,还是会出现科学数,答案!这不玩我吗? 怎么PHP计算个浮点数这么坑啊!
信頼できる php 浮動小数点計算をお探しですか? - PHP 中国語 Web サイト Q&A - php 信頼できる浮動小数点計算をお探しですか? - PHP 中国語 Web サイト
見て学んでください。
这不是PHP的问题,是浮点数的问题,一般设计人民币金额这样的字段,不要使用浮点数,使用整数型来储存,如果需要两位小数点,就把小数点后两位作为个位和十位。比如12.34,在数据库中储存为1234,计算时也是计算1234,只是前端显示时显示为12.34 。
可以参照一些第三方支付金额字段的设计,比如下面是ping++的『订单金额 amount』字段的设计:
信頼できる php 浮動小数点計算をお探しですか? - PHP 中国語 Web サイト Q&A - php 信頼できる浮動小数点計算をお探しですか? - PHP 中国語 Web サイト
見て学んでください。
这不是PHP的问题,是浮点数的问题,一般设计人民币金额这样的字段,不要使用浮点数,使用整数型来储存,如果需要两位小数点,就把小数点后两位作为个位和十位。比如12.34,在数据库中储存为1234,计算时也是计算1234,只是前端显示时显示为12.34 。
可以参照一些第三方支付金额字段的设计,比如下面是ping++的『订单金额 amount』字段的设计: