PHP数学(编号)

use*_*886 1 php math

$temp 目前是6.但变量结果可能每次都改变为不同的数字,因此它不是固定值.

无论如何,为此$temp * 1.1666666,结果将是6.99999996.由于我使用了floor函数,因此它将向下舍入为6.

有什么方法当价值更高时>*.49999它会留在*.5而不是*

例如:6.51111111,6.78948123,6.9747124

预期产出: 6.5

例如:6.49999999,6.12412431,6.33452361

预期产出: 6

请注意,$ temp值将永远在变化..谢谢你!

Joh*_*nde 5

使用round($number, 1).这将四舍五入到最接近的小数点.

$number = round(.1666666 * $temp, 1);
Run Code Online (Sandbox Code Playgroud)

如果你想要舍入到最近的一半,你可以这样做:

function round_to_half($num)
{
  if($num >= ($half = ($ceil = ceil($num))- 0.5) + 0.25) return $ceil;
  else if($num < $half - 0.25) return floor($num);
  else return $half;
}

$number = round_to_half(.1666666 * $temp);
Run Code Online (Sandbox Code Playgroud)