如何在PHP中将整数向上四舍五入到最接近的15



我存储了INTEGER(255(变量$duration,其中包含一个来自用户的值。我需要四舍五入到最接近的15。我找遍了所有地方,但一直找不到解决办法。

我该怎么做?

例如:

  • 10变为15
  • 16变为30
  • 130变为135

此外,如何将$duration添加到TIME变量$time中,以输出该持续时间之后的时间?

例如,从080000:

  • 如果$duration为15,则$time变为081500
  • 如果$duration为30,则$time变为083000
  • 如果$duration为135,则$time变为101500

谢谢!

您可以使用带强制转换的简单除法和加法(将返回不带分数的整数值(运算符,如下所示:

$val = 130;//or any value
$roundedVal = ((int)($val/15) + 1) * 15;

关于第二个问题:

$time='080000';
$valHours = (int)($val/60);
$valMin = (int)($val % 60);
$time = $time + ($valHours * 10000) + ($valMin * 100);
$time = strlen($time) == 8? $time : '0' . $time;

最后一行表示或修复前导零,因为它不是传统的时间格式。我没有考虑到秒数。

最新更新