str_pad在php中有一个浮点数?

时间:2012-03-29 17:15:34

标签: php

我正在寻找在PHP中str_pad浮动的最佳方式。

我遇到的问题是str_pad考虑了字符串长度,但浮点数有小数点。如果我想要一个用零填充的数字,这就变成了一个噩梦。

例如,如果我需要数字在小数点后总是至少有6个数字,那么当结果发生变化时我无法使用str_pad

$i = 1.0;
echo str_pad($i, 8, '0'); // 1.000000
$i = 10.5
echo str_pad($i, 8, '0'); // 10.50000 ## ONLY PADDED WITH 5 NUMBERS AFTER DECIMAL

我知道我可以explode然后str_pad这样做,但只是想知道是否有一个内置功能的PHP或更好的方式。

2 个答案:

答案 0 :(得分:3)

使用number_format

echo number_format($i, 6); // 6 decimals

您还可以自动添加分隔符和空格等

number_format($number, 2, ',', ' '); // 1 234,56

Documentation

答案 1 :(得分:2)

我想你应该试试

printf ("%.06f", $i);

代替。