PHP enter percentage number round to 2 decimal places not working

后端 未结 3 1325
孤街浪徒
孤街浪徒 2021-01-17 00:33

php number round to 2 decimal places not working my number is 0.00000000000000000000001 and I want result as 0.01. I tried php number_format() func

3条回答
  •  感情败类
    2021-01-17 01:30

    Just make a simple function that returns either the rounded value or the minimum value you would like...

    function round_special($x)
    {
        if ($x == 0) return 0;
    
        $rounded = round($x, 2);
        $minValue = 0.01;
    
        if ($rounded < $minValue) {
            return number_format($minValue, 2);
        } else {
            return number_format($rounded, 2);
        }
    }
    

    So, results would look like:

    $x = 0.00000000000000000000001;
    echo round_special($x);     // 0.01
    
    echo round_special(0.0001); // 0.01
    echo round_special(55);     // 55.00
    echo round_special(0.6);    // 0.06
    

提交回复
热议问题