我想创建一个函数,四舍五入到它自己的值大小。
示例:
5 => 10
51 => 60
100 => 100/200 // i don't mind which it will become
121 => 200
999 => 1000
1001 => 2000
我如何在PHP中做到这一点。我知道这可以用ceil/round完成,但我不知道怎么做。
可能是你的意思是这个
function Myround(array $numbers)
{
$new_numbers = [];
foreach ($numbers as $num) {
$rozriad = strlen($num)-1;
$new_numbers[] = round(ceil($num/pow(10, $rozriad))*pow(10, $rozriad), -$rozriad);
};
return $new_numbers;
};
$dozens = [5, 51, 100, 121, 999, 1001];
print_r(Myround($dozens));
您可以通过以下功能实现这一点:
/**
* by Johannes Schuh, Pineapple Developer
*/
function roundIt($number) {
$amount = 0;
do {
$number = $number / 10;
$amount++;
} while($number >= 10);
$result = 0;
$result = $number - fmod($number, 1);
$result++;
$result = $result * pow(10, $amount);
return $result;
}