PHP - number_format 因数学运算失败
Posted
技术标签:
【中文标题】PHP - number_format 因数学运算失败【英文标题】:PHP - number_format fails with math operations 【发布时间】:2013-09-28 17:11:40 【问题描述】:将 php 函数 number_format
用于数学运算时会产生奇怪的结果。
运行这个...
echo number_format(32545000 - 24343400) . '<br>';
echo number_format(32545000) - number_format(24343400);
为什么第二个答案是“8”而不是正确答案?
【问题讨论】:
您不想将-
与字符串一起使用。 :)
【参考方案1】:
number_format(32545000)
返回一个字符串:32,545,000
number_format(24343400)
返回一个字符串:24,343,400
字符串被转换为int,你得到:
32 - 24 = 8
【讨论】:
好的。但是为什么这不起作用:echo intval(number_format(32545000)) - intval(number_format(24343400));
@gtilflm 这段代码给出了完全相同的结果。 number_format
将数字格式化为便于打印的格式。为什么要减去字符串而不是 32545000 - 24343400
?以上是关于PHP - number_format 因数学运算失败的主要内容,如果未能解决你的问题,请参考以下文章