SaBo
Новичок
Округление дробей
Вопрос следующий: я имею на входе дробь с неограниченным количество знаков после запятой.
Мне нужно округлить эту дробь в бОльшую сторону с точностью до двух знаков.
Казалось бы, всё просто:
Но вот не хочет принимать параметр PHP_ROUND_HALF_UP . Или это годится только для PHP 5.3?
P.S. Пришлось изобретать такую фигню:
Вопрос следующий: я имею на входе дробь с неограниченным количество знаков после запятой.
Мне нужно округлить эту дробь в бОльшую сторону с точностью до двух знаков.
Казалось бы, всё просто:
PHP:
round(1.454523, 2, PHP_ROUND_HALF_UP);
P.S. Пришлось изобретать такую фигню:
PHP:
public function getCommission()
{
if($this->amount <= 0.01)
return 0.01;
$commission = $this->amount / 100 * $this->commission;
if(!preg_match('/^[0-9]+[\.][0-9]{2,2}$/', $commission))
{
if(preg_match('/^([0-9]+[\.][0-9]{2,2})[0-9]{1,}$/', $commission, $matches))
{
$commission = $matches[1] + 0.01;
}
}
return $commission;
}