- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
<?php
/**
* Округляет число до заданного количества знаков после запятой.
* @param float $v - округляемое число.
* @param int $prec - количество знаков после запятой (по-умолчанию: 0).
* @param str $mode - режим округления: ceil | floor | round (по-умолчанию: round).
* @return float округлённое число.
*/
function round2($v, $prec = 0, $mode = "round") {
for ($k = 1, $i = 0; $i < $prec; $i++, $k *= 10)
;
switch ($mode) {
case "ceil" : $v = ceil($k * $v) / $k;
break;
case "floor" : $v = floor($k * $v) / $k;
break;
default : $v = round($k * $v) / $k;
}
return $v;
}
myaut 24.01.2015 19:30 # 0
И все потому что функции не являются объектами первого класса. Эх.
guest 24.01.2015 19:33 # +6
myaut 24.01.2015 20:07 # +1
bormand 24.01.2015 20:12 # +2
myaut 24.01.2015 20:27 # 0
kissarat 24.01.2015 20:47 # +5
( float $val [, int $precision = 0 [, int $mode = PHP_ROUND_HALF_UP ]] )
guest 24.01.2015 22:26 # +3