moneyhandler.class.php 659 B

123456789101112131415161718192021222324
  1. <?php
  2. class MoneyHandler
  3. {
  4. public static function round(float $money): float
  5. {
  6. if (strlen(strval(round($money))) == 1) {
  7. return $money;
  8. }
  9. $str = (string) round($money);
  10. $lastChar = (int) $str[-1];
  11. if ($lastChar > 0 && $lastChar <= 2) {
  12. $str = (float) substr($str, 0, -1).'0';
  13. } else if ($lastChar > 2 && $lastChar <= 5) {
  14. $str = substr($str, 0, -1).'5';
  15. } else if ($lastChar > 5 && $lastChar <= 9) {
  16. $str = (string) round($money + 10);
  17. $str = substr($str, 0, -1).'0';
  18. }
  19. return (float) $str;
  20. }
  21. }