PHP将字符串格式化为由两个小数点分隔的数字

时间:2016-03-10 17:14:57

标签: php string format decimalformat

用户可以按以下格式输入值:

  • 1.00
  • 1
  • 1.00

现在我需要使用两个小数点(,)返回这个值。当我使用时:

number_format($ request-> amount,2,',','')

使用“1,00”作为输入我收到此错误:

Notice: A non well formed numeric value encountered

解决这个问题的最佳方法是什么,仍然可以处理所有三种类型的输入?

这是一个简短的例子:

input of user:|output:
1.00           1,00
1              1,00 
1,51           1,51

2 个答案:

答案 0 :(得分:2)

以下内容应该有效:

$request->amount = str_replace(",", ".", $request->amount);
number_format($request->amount, 2, ',','');

答案 1 :(得分:0)

试试这个:

number_format((int)$request->amount, 2, ',','');