如何在MYSQL / PHP中显示两位小数?

时间:2012-05-11 21:48:14

标签: php mysql double

我想显示£2.00 而不是£2 £3.50 而不是£3.5

这些数字假设price在MySQL数据库中被定义为DOUBLE。如何强制MySQL或PHP显示两位小数?

非常感谢!

4 个答案:

答案 0 :(得分:9)

对于MySQL,您可以使用format功能:

SELECT FORMAT(1.2345, 2);

它将返回1.23

对于PHP,您可以以类似的方式使用number_format

echo number_format(1.2345, 2);

同时打印1.23

答案 1 :(得分:7)

试试这个:

echo number_format ($price, 2);

答案 2 :(得分:5)

number_formatmoney_format是你的朋友!

答案 3 :(得分:5)

其他答案是正确的,因为他们将格式化一个小数点后两位。

但是,考虑到您的问题中的上下文,更好的答案是不要使用DOUBLE数据类型 - 至少不是为此目的。

DOUBLE一样的

Floating-point data types 近似并且不代表确切的数字;它们可用于表示质量或长度等连续量。对于像货币一样的离散数量,它们可能是灾难性的,导致非常意外的结果。对于这样的数量,你真的应该使用MySQL的fixed-point types,例如DECIMAL,这使你可以指定 scale (即小数位数到因此,不需要任何此类格式或舍入来产生正确的货币值。