【问题标题】:How to round numbers?如何四舍五入?
【发布时间】:2019-04-07 23:04:53
【问题描述】:

7000 / 253000 = 0.027667984189723

$number1 = "7000";
$number2 = "253000";
$total = $number1 / $number2;
// return 0.027667984189723

这个结果如何舍入2766?

【问题讨论】:

  • 你怎么能认为“2766”是四舍五入的“0.027667984189723”,这不是数学的运作方式
  • 请告诉我们您到目前为止尝试过什么round您的电话号码?

标签: php calculation


【解决方案1】:

试试这个

    echo round($total,5);

【讨论】:

    【解决方案2】:

    $number1 / $number2 * 10000 % 1

    【讨论】:

    【解决方案3】:

    我不确定您是如何从小数中得出 2766 的。但我已经准备好迎接这个挑战了。首先,要获得正确的小数位,请执行以下操作:

    <?php echo round($total, 5); ?>
    

    但是,如果您像我一样,我会解决这个挑战并从中获得一些乐趣:

    $num1 = round($total, 5); 
    $num2 = strval($num1); 
    $num3 = str_split($num2); 
    
    $arr1 = array();
    foreach ($num3 as $num) {
        if(is_string($num)) { 
            array_push($arr1, $num);
        }
    }
    
    $arr2 = array_slice($arr1, 3);
    
    foreach($arr2 as $out) { 
        echo $out;
    }
    
    

    预期的输出是 2767,因为我使用了正确的舍入函数。

    【讨论】:

      【解决方案4】:

      我希望它对你有用

      $after_point = ltrim($total,"0.");  //27667984189723
      echo  substr($v,0,4);               //2766 
      

      如果你给52.548457,那么它会返回52.5

      你必须破解那个以0.开头的号码

      【讨论】:

        猜你喜欢
        • 2023-01-12
        • 2022-11-21
        • 2012-08-04
        • 2023-03-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多