3

我的值每 5 个视图增加 1。MySQL 表如下所示:

myvalue views increment
10      12    5

例如,一旦浏览量达到 15,myvalue将变为 11。

我通过这样做来完成这个:

$div = $myvalue / $increment;
if (ceil($div) == $div) {
    $myvalue = $myvalue + $increment;
}

我想做的是做一个快速计算,告诉我在下一次增量之前还有多少视图。在此示例中,我想返回数字 3,因为在下一次myvalue达到 5 的增量(即 15)之前还有 3 个视图。

如果myvalueviews10、26 和increment25,我需要得到数字 24,因为在我们达到 25 的下一个增量(即 50)之前还需要 24 个视图。

任何想法如何做到这一点?

4

2 回答 2

1

我认为你可以使用这个公式

$diff = $increment - ($views % $increment);

而且你的原始代码也可以写成

if(($views % $increment) === 0)
{
  $myvalue += 1; // you said myvalue will increase by one
}
于 2012-06-20T02:00:15.647 回答
0
$ret = ceil($views / $increment) * $increment - $views;

或者

$ret = $increment - $views % $increment;
于 2012-06-20T01:56:02.253 回答