sprintf在某些情况下导致错误的结果

时间:2016-12-13 10:34:17

标签: php text format

我发现一些奇怪的案例意外地与sprintf php函数无关。有人有同样的问题或知道解释吗?

以下是不起作用的案例:

$value = 1.15;
echo sprintf("%03d",($value*100));

如果$value定义了1.15 * 2^n,则结果总是错误的 如果我用另一个值运行该函数,它运行良好。

为了更正,我使用了strval这样的函数:

echo sprintf("%03d",(strval($value*100)));

这种方式没有任何问题。

有人知道它发生了什么吗? 提前谢谢!

0 个答案:

没有答案