最初的问题是:取分钟数 -> 变成刻钟 -> 1 刻钟是 1 个单位 -> 输出单位
我今天一整天都在整理一个页面,几分钟前我的大脑刚刚停止工作,我就是不知道如何输出单位数量。我知道在这个网站上发布问题会有所帮助。
所以用户输入分钟数(不是小时和分钟,只是分钟),网站需要输出单位数量。一个单位是一刻钟。分钟总是四舍五入到最接近的一刻钟。我知道我会以某种方式使用 ceil 并且可能(?)number_format,但我无法让它正确出现。任何帮助表示赞赏。
尝试:
$units = ceil($minutes / 15)
我对此的看法:
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
$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()
改用。
这不是诀窍吗?
$numberOfMinutes = 135;
$numberOfFifteenMinuteUnits = round($numberOfMinutes / 15);
echo $numberOfFifteenMinuteUnits;