简体   繁体   English

PHP四舍五入到5的前一个倍数

[英]PHP Round to previous multiple of 5 decimal

Expected function signature: 预期功能签名:

function roundToPreviousMultipleWithDecimal(float $number, int $x = 5): float;
  • 8.4 => 8.0 8.4 => 8.0
  • 8.6 => 8.5 8.6 => 8.5
  • 8.9 => 8.5 8.9 => 8.5
  • 9.0 => 9.0 9.0 => 9.0

an easy solution, floor the double number and divide by two... 2 cents ;) 一个简单的解决方案,将双精度数取下并除以二... 2美分;)

<?php

function roundToPreviousMultipleWithDecimal(float $number){

        return $specificRound = floor($number * 2) / 2;
}

$a = 8.4;
$b = 8.6;
$c = 8.9;
$d = 9.0;

echo roundToPreviousMultipleWithDecimal($a) ."<br />";
echo roundToPreviousMultipleWithDecimal($b) ."<br />";
echo roundToPreviousMultipleWithDecimal($c) ."<br />";
echo roundToPreviousMultipleWithDecimal($d) ."<br />";

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM