2011-09-18 82 views
9

所以我有一些来自表单的字段。在这里你可以键入0.3,它会将0.3插入到数据库中。你输入0,3就会插入“0”。将逗号更改为点,在php中使用小数点

$product['protein']; // 0,3 

所以对于上面这个我怎样才能用一个点替换逗号?

回答

28

尝试PHP的功能str_replace()

$product['protein'] = str_replace(',', '.', $product['protein']); 

这应该是一个不错的选择。

你能想到用number_format()

number_format($value, $numberOfDecimals, $charaForDecimalPoint, $charForThousandsSeparator) 

但在你的情况下,将不适用,因为事实上,你的起始值(“0,3”)将不会被识别为一个数。 实际上,数字值的小数点必须是点(“。”)。

仅当您的起始值为真实数字时才使用number_format。

+0

这是一个问题,当人/机开始与千个分隔符,如1.337,42输入数字 - 问题我实际上面临的结果值是1.333742在PHP中 - 一个因素1000错误。 –

3
$product['protein'] = str_replace(",",".",$product['protein']) 

有关str_replace函数功能的更多信息请访问:http://uk.php.net/str_replace

1

尝试

$product['protein'] = str_replace(",",".",$product['protein']) 
相关问题