我想在MySQL中存储十进制项目的价格。
如何格式化价格以便存储在数据库中?
答案 0 :(得分:2)
number_format($number, 2, ".", "");
或者如果你想要逗号,可以使用这个:
number_format($number, 2, ".", ",");
在PHP.net上查看number_format()
答案 1 :(得分:2)
Mark Byers是正确的;在将数据发送到mysql之前,您不需要修改数据。
alter table foo change price price decimal(10,2) not null default 0
如果您的price
列目前是int
,则不会丢失此查询的数据。
例如,10
的值将更新为10.00
,或5125
的值将更新为5125.00
等。
答案 2 :(得分:1)
您不需要进行任何格式化来存储数据。
您可以将列类型设置为decimal
,并仅在客户端显示值时进行格式化,而不是在存储时。