使用PHP格式化数字,以便在十进制之前始终有2位数

时间:2016-02-11 21:01:44

标签: php

我正在尝试在PHP中格式化一个数字,以便在小数点之前始终至少有2个位置,无论我google /尝试什么,似乎无法弄明白。如果小数点前没有整数,我宁愿这样做。

这将是理想的期望输出,因为我不知道手头的数字,它每页都会改变。

0.59 becomes 00.59
1.00 stays 1.00
0.43 becomes 00.43
14.56 stays 14.56

有什么想法吗?

3 个答案:

答案 0 :(得分:1)

这是一种做你想做的事情的方法:

$num = 0.342;
$num = number_format(round((float) $num, 2),2);
if ($num < 1) $num = str_pad($num,5,'0',STR_PAD_LEFT);
echo $num;

答案 1 :(得分:1)

如果数字小于1,则添加0:

$res = (($num < 1) ? '0' : '').number_format($num, 2);

答案 2 :(得分:1)

如果您不在Windows上,则可以:

def flat_list2(x,n):
    if not x or len(x) < 1 or n < 1 or n > len(x) or x[n-1] == None:
        return None

    bt = BinaryTree( x[n-1] )
    bt.set_left( flat_list2(x, 2*n))
    bt.set_right(flat_list2(x, 2*n + 1))
    return bt

您可能还需要添加!如果你在输出中得到货币符号,则标记。

请参阅php.net/money_format