Я знаю, что следующий код удалит все цифры. раунд (число $);

Я хочу округлить числа следующим образом, если число 20,123, мне нужен результат 20, если число 20,567, мне нужен результат 21

Означает, что если значение меньше 0,5, оно должно удалить это значение. Если значение .5 или выше, его следует округлить в большую сторону. Как ? Кто-нибудь поможет?

php
-4
Shijil T 2 Май 2016 в 10:45

4 ответа

Лучший ответ

round($number) сделает то, что вы хотите:

round(20.156); // 20
round(20.651); // 21

Живой пример

1
Murad Hasan 2 Май 2016 в 07:54

Попробуйте это:

Используйте функции ceil, floor, explode и substr для достижения вашей ценности.

$num = "20.123";
$arr = explode(".", $num);

if(substr($arr[1], 0, 1) >= 5){
    $num = ceil($num);
}else{
    $num = floor($num);
}
echo $num;

Результат:

20

Также вы можете использовать функцию round.

round(20.156); // 20
round(20.651); // 21
0
Murad Hasan 2 Май 2016 в 07:56
function get_decimal_num($number){
    $num = explode('.', $number);
    return $num[1];
}
$num = 10.5 ; // for example

$val = get_decimal_num($num);

if($val >= 5)
{
  $value = (int) $num;
  echo $value = $value + 1;
}
if($val < 5)
{
  echo $num;
}

Plese check it...
0
Bhavi 2 Май 2016 в 07:56

Я уверен, что все работает хорошо.

<?php
$var = 22.443;
$var = number_format($var, 0, '.', ''); 
echo $var;
?>
0
Asheesh 2 Май 2016 в 07:49