【问题标题】:Get value from number从数字中获取价值
【发布时间】:2015-05-21 13:02:31
【问题描述】:

我有一个这种格式的号码:

3 320,17

我需要得到它:

3320,17

如果我使用:

floatval($price)

它只返回由空格分隔的数字 3。

知道怎么解决吗?

【问题讨论】:

  • 那么这个问题我们现在在哪里?

标签: php numbers format


【解决方案1】:

这应该适合你:

只需将号码中的空格和逗号替换为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()
  • @BeatAlex 你的意思是换句话说:代码适用于生活在 2015 年的每个人,如果你过去必须使用旧语法 array() ?! :)
  • 是的,类似的东西!
猜你喜欢
  • 2016-05-09
  • 2013-04-14
  • 2018-07-08
  • 2023-03-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-10
  • 2016-10-29
相关资源
最近更新 更多