PHP回合3S
我通过PHP获取时间PHP回合3S
$current_hour = date("G");
现在让我们假设$current_hour
等于20.我怎么会四舍五入至19?或者如果$current_hour
等于00,我会如何将它变成22?我不知道如果我解释这口井,但基本上我想每个号码本轮下跌中的3个时间间隔,所以我得到以下几点:
1
4
7
10
13
16
19
22
[back to begining]
中的任何数字,应该得到整到最低他们所以11将会是10,15会是13等等......
简单的方法是使用整数运算。首先除以3,然后投射到一个整数,然后再乘以3,并进行一些移位以保留你想要的序列。
例子:
$current_hour = 20;
echo (intval(($current_hour + 23)/3) * 3 + 1) % 24; // Outputs 19
这会给你一个像0,3,6,9,12 ... – Arjan 2012-04-11 19:55:42
'22/3 = 7.3'' 7 * 3 = 21'的序列不起作用。 – webbiedave 2012-04-11 19:56:00
我认为这很明显,你为偏移加1。编辑使其更清晰。 – jli 2012-04-11 19:56:56
$round = intval(($current_hour - 1)/3) * 3 + 1;
另外:'if($ current_hour == 0)$ current_hour = 24;' – Botanick 2012-04-11 19:57:44
$round = (intval(($currentHour + 24)/3) * 3) % 24 + 1;
我认为它是:
($current_hour - ($current_hour % 3)) + 1
对不起我的数学不是很好,如果这是彪是简单的,或者我只是不看到它:( – 2012-04-11 19:53:30
那么,你想要有人也可以微波你的晚餐,而他们**写**你的**代码?我有信心,一点点心理应用程序,你可以这个问题出来了。 – rdlowrey 2012-04-11 20:05:24