如何在PHP中将11,22,33转换为10,20和30?

时间:2015-03-30 10:36:52

标签: php numbers int

我不知道如何正确地标题(请告诉我这个号码叫什么)。

我希望将2位数转换为10位可分数。例如,我希望:

  • 15成为10
  • 23成为20
  • 38成为30
  • 999成为900
  • 9999成为9000

我尝试在谷歌上搜索解决方案,但我不知道如何输入正确的单词。

5 个答案:

答案 0 :(得分:3)

简单,使用PHP底层函数:http://php.net/manual/en/function.floor.php

floor($number/10) * 10

答案 1 :(得分:2)

我写了一个简单的函数应该可以工作:

<?php
function roundDown($var){
    $len = strlen($var)-1;
    $divide = 1;
    for($i=1;$i<=$len;$i++){
        $divide .= 0;
    }


    return floor($var/$divide)*$divide;
}

echo roundDown(9999);

答案 2 :(得分:1)

最简单的方法是除以10,然后是最低值并乘以10。 (Floor method - phpdocs)

floor($number/10)*10

答案 3 :(得分:0)

使用round

echo round(1241757, -6); // 1000000

来自http://php.net/manual/en/function.round.php

答案 4 :(得分:0)

你正在寻找一个重要人物&#34;。 我认为这个答案提供了一个很好的解决方案:

How to round down to the nearest significant figure in php

简短形式:

$x = $y - $y % pow(10, floor(log10($y)));