我发现一些奇怪的案例意外地与sprintf
php函数无关。有人有同样的问题或知道解释吗?
以下是不起作用的案例:
$value = 1.15;
echo sprintf("%03d",($value*100));
如果$value
定义了1.15 * 2^n
,则结果总是错误的
如果我用另一个值运行该函数,它运行良好。
为了更正,我使用了strval
这样的函数:
echo sprintf("%03d",(strval($value*100)));
这种方式没有任何问题。
有人知道它发生了什么吗? 提前谢谢!