2012-09-15 196 views

回答

4

你会想要使用printfsprintf。您可以在php docs中阅读更多关于它的信息。

52

尝试number_format

echo number_format("5.2",2) 
+0

[。这也可能是有帮助的(HTTP ://php.net/manual/en/function.money-format.php – FluffyJack

+2

请记住,number_format返回一个字符串,所以你的float将不再是float类型。如果您尝试在计算中使用结果数字,则可能会收到不理想的结果。您可以通过它环绕在floatval() – Baxny

+0

注意转换回一个浮动:'+ number_format(“5.2”,2);'会给你一个号码,而'number_format(“5.2”,2)'这给一个字符串。无论如何,在一般情况下,'sprintf('%0.2f',$ num)'一直是我的首选。从来没有一个有效的基准测试的理由,让我知道,除非有个人偏好(或上下文),否则你有正当理由使用其他方法。干杯! – Fr0zenFyr

2

如果你只是想确保一个号码显示两位小数,你也可以使用number_format,或者(如果这是一个货币价值)money_format

如:echo number_format('5.2', 2);

-3

试试这个:

number_format((float)$foo, 2, '.', ''); 
+0

请考虑编辑答案包括解释你的代码如何解决手头的问题。 – Matt

相关问题