如何在十进制值中插入逗号并删除多余的零

时间:2016-11-05 06:55:42

标签: php

在十进制数中如何删除小数点后的额外零点以及如何避免数字舍入。 我试过以下代码

$example = "123456";
$exmaple2= "55.369";
$subtotal =  number_format($example, 2, '.', ',');
$subtotal1 =  number_format($exmaple2, 2, '.', ',');
echo $subtotal."<br/>";
echo $subtotal1;

获取输出

123,456.00
55.37

预期产出

123,456
55.369

3 个答案:

答案 0 :(得分:0)

使用数字时,至少删除双引号以区分数字和字符串。如果您想动态使用该变量,请验证其浮点数或数字。

$example = 123456;
$exmaple2= 55.369;
$subtotal =  (is_float($example) == true ? number_format($example, 3, '.', ',') : number_format($example, 0, '.', ','));
$subtotal1 =  (is_float($exmaple2) == true ? number_format($exmaple2, 3, '.', ',') : number_format($exmaple2, 0, '.', ','));
echo $subtotal."<br>";
echo $subtotal1;

答案 1 :(得分:0)

试试这个

$example = "123456";
$exmaple2= "55.369";
$subtotal =  number_format($example, 0, '.', ',');
$subtotal1 =  number_format($exmaple2, 3, '.', ',');
echo $subtotal."\n";
echo $subtotal1;

请注意number_format()

第二个参数

答案 2 :(得分:0)

试试这个

$example = "123456"+0;
//$example = "55.369"+0;
if (is_float($example)) {    
    $subtotal =  number_format($example, 3, '.', ',')+0;  
  } else { 
    $subtotal =  number_format($example, 0, '.', ',');
  }  


echo $subtotal."<br/>";