【发布时间】:2015-05-21 13:02:31
【问题描述】:
我有一个这种格式的号码:
3 320,17
我需要得到它:
3320,17
如果我使用:
floatval($price)
它只返回由空格分隔的数字 3。
知道怎么解决吗?
【问题讨论】:
-
那么这个问题我们现在在哪里?
我有一个这种格式的号码:
3 320,17
我需要得到它:
3320,17
如果我使用:
floatval($price)
它只返回由空格分隔的数字 3。
知道怎么解决吗?
【问题讨论】:
这应该适合你:
只需将号码中的空格和逗号替换为str_replace()
echo (float) str_replace([" ", ","], ["", "."], $str);
输出:
3320.17
现在要以预期格式获取浮点数,只需使用 number_format()。
$str = "3 320,17";
$floatNumber = (float)str_replace([" ", ","], ["", "."], $str);//Create valid float number
echo number_format($floatNumber, 2, ",", "");
【讨论】:
preg_replace
php 4 +,否则使用array()。
array() ?! :)