|
@@ 266-273 (lines=8) @@
|
| 263 |
|
* @param int $precision
|
| 264 |
|
* @return string
|
| 265 |
|
*/
|
| 266 |
|
public static function roundDown($number, $precision = 0)
|
| 267 |
|
{
|
| 268 |
|
$number = (string)self::convertScientificNotationToString($number);
|
| 269 |
|
$multiply = self::pow(10, (string)abs($precision));
|
| 270 |
|
return $precision < 0 ?
|
| 271 |
|
self::mul(self::floor(self::div($number, $multiply)), $multiply, $precision) :
|
| 272 |
|
self::div(self::floor(self::mul($number, $multiply)), $multiply, $precision);
|
| 273 |
|
}
|
| 274 |
|
|
| 275 |
|
/**
|
| 276 |
|
* @param int|string $number
|
|
@@ 307-314 (lines=8) @@
|
| 304 |
|
* @param int $precision
|
| 305 |
|
* @return string
|
| 306 |
|
*/
|
| 307 |
|
public static function roundUp($number, $precision = 0)
|
| 308 |
|
{
|
| 309 |
|
$number = (string)self::convertScientificNotationToString($number);
|
| 310 |
|
$multiply = self::pow(10, (string)abs($precision));
|
| 311 |
|
return $precision < 0 ?
|
| 312 |
|
self::mul(self::ceil(self::div($number, $multiply)), $multiply, $precision) :
|
| 313 |
|
self::div(self::ceil(self::mul($number, $multiply)), $multiply, $precision);
|
| 314 |
|
}
|
| 315 |
|
|
| 316 |
|
/**
|
| 317 |
|
* @param int|string $number
|