2

最初的问题是:取分钟数 -> 变成刻钟 -> 1 刻钟是 1 个单位 -> 输出单位

我今天一整天都在整理一个页面,几分钟前我的大脑刚刚停止工作,我就是不知道如何输出单位数量。我知道在这个网站上发布问题会有所帮助。

所以用户输入分钟数(不是小时和分钟,只是分钟),网站需要输出单位数量。一个单位是一刻钟。分钟总是四舍五入到最接近的一刻钟。我知道我会以某种方式使用 ceil 并且可能(?)number_format,但我无法让它正确出现。任何帮助表示赞赏。

4

4 回答 4

7

尝试:

$units = ceil($minutes / 15) 
于 2011-07-07T16:07:53.000 回答
1

我对此的看法:

return (round($minutes / 15) * 15) % 60;

产生:

for($i=0; $i<60; $i++) {
    echo $i . ' -> ' . roundQuarter($i) . '<br/>';
}

function roundQuarter($minutes) {
    return (round($minutes / 15) * 15) % 60;
}

0 -> 0
1 -> 0
2 -> 0
3 -> 0
4 -> 0
5 -> 0
6 -> 0
7 -> 0
8 -> 15
9 -> 15
10 -> 15
11 -> 15
12 -> 15
13 -> 15
14 -> 15
15 -> 15
16 -> 15
17 -> 15
18 -> 15
19 -> 15
20 -> 15
21 -> 15
22 -> 15
23 -> 30
24 -> 30
25 -> 30
26 -> 30
27 -> 30
28 -> 30
29 -> 30
30 -> 30
31 -> 30
32 -> 30
33 -> 30
34 -> 30
35 -> 30
36 -> 30
37 -> 30
38 -> 45
39 -> 45
40 -> 45
41 -> 45
42 -> 45
43 -> 45
44 -> 45
45 -> 45
46 -> 45
47 -> 45
48 -> 45
49 -> 45
50 -> 45
51 -> 45
52 -> 45
53 -> 0
54 -> 0
55 -> 0
56 -> 0
57 -> 0
58 -> 0
59 -> 0
于 2020-10-08T06:48:35.503 回答
0
$rounded = floor($minutes / 15);

1 minute / 15 = 0.0666 -> 0
14 minute / 15 = 0.9333 -> 0;
15 / 15 = 1 -> 1;

这将在 15 分钟的范围内为您提供 0->3。如果您想要 1-4,请ceil()改用。

于 2011-07-07T16:08:55.077 回答
0

这不是诀窍吗?

$numberOfMinutes = 135;

$numberOfFifteenMinuteUnits = round($numberOfMinutes / 15);

echo $numberOfFifteenMinuteUnits;
于 2011-07-07T16:12:06.337 回答