PHP获取指定分钟数的下一个整数倍

Posted ilovemyd

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP获取指定分钟数的下一个整数倍相关的知识,希望对你有一定的参考价值。

2019-6-11 11:51:03 星期二

情景:

要定时发送邮件,

邮件数据入表时就记录下其待发送时间, 

然后crontab是每分钟扫描邮件表, 找出当时那一分钟需要发送的邮件

举例:

假如有一种邮件要每隔30分钟发出,

那么插入数据库的发送时间种的 ‘分钟‘ 应该是30的整数倍:  2019-6-11 12:30 或 2019-6-11 13:00 或 2019-6-11 13:30

如果当前时间是 2019-6-11 12:29 那么插入数据库的待发送时间应该是 2019-6-11 12:30

如果当前时间是 2019-6-11 12:30 那么插入数据库的待发送时间应该是 2019-6-11 13:00

 1 function getNextPoint($minute)
 2 
 3     echo $minute . ‘ : ‘;
 4     $time = time() + 60;
 5     // $time = strtotime(‘2019-06-11 11:50:07‘) + 60;
 6     $next = ‘‘;
 7     for ($i=0; $i<120; $i++) 
 8         $minu = intval(date(‘i‘, $time));
 9         $minu = $minu ? $minu : 60;
10         echo $minu . ‘ -- ‘;
11         
12         if ($minu % $minute == 0) 
13             $next = date(‘Y-m-d H:i:00‘, $time);
14             break;
15          else 
16             $time += 60;
17         
18     
19     
20     return $next;
21 
22 
23 echo date(‘Y-m-d H:i:s‘). ‘<br>‘;
24 for ($j=1; $j<60; $j++) 
25     echo getNextPoint($j). ‘<br>‘;
26 

 输出过程:

技术图片
2019-06-11 12:09:31
1 : 10 -- 2019-06-11 12:10:00
2 : 10 -- 2019-06-11 12:10:00
3 : 10 -- 11 -- 12 -- 2019-06-11 12:12:00
4 : 10 -- 11 -- 12 -- 2019-06-11 12:12:00
5 : 10 -- 2019-06-11 12:10:00
6 : 10 -- 11 -- 12 -- 2019-06-11 12:12:00
7 : 10 -- 11 -- 12 -- 13 -- 14 -- 2019-06-11 12:14:00
8 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 2019-06-11 12:16:00
9 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 2019-06-11 12:18:00
10 : 10 -- 2019-06-11 12:10:00
11 : 10 -- 11 -- 2019-06-11 12:11:00
12 : 10 -- 11 -- 12 -- 2019-06-11 12:12:00
13 : 10 -- 11 -- 12 -- 13 -- 2019-06-11 12:13:00
14 : 10 -- 11 -- 12 -- 13 -- 14 -- 2019-06-11 12:14:00
15 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 2019-06-11 12:15:00
16 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 2019-06-11 12:16:00
17 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 2019-06-11 12:17:00
18 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 2019-06-11 12:18:00
19 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 2019-06-11 12:19:00
20 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 2019-06-11 12:20:00
21 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 2019-06-11 12:21:00
22 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 2019-06-11 12:22:00
23 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 2019-06-11 12:23:00
24 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 2019-06-11 12:24:00
25 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 2019-06-11 12:25:00
26 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 2019-06-11 12:26:00
27 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 2019-06-11 12:27:00
28 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 2019-06-11 12:28:00
29 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 2019-06-11 12:29:00
30 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 2019-06-11 12:30:00
31 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 2019-06-11 12:31:00
32 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 2019-06-11 12:32:00
33 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 2019-06-11 12:33:00
34 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 2019-06-11 12:34:00
35 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 2019-06-11 12:35:00
36 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 2019-06-11 12:36:00
37 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 2019-06-11 12:37:00
38 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 2019-06-11 12:38:00
39 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 2019-06-11 12:39:00
40 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 2019-06-11 12:40:00
41 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 2019-06-11 12:41:00
42 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 42 -- 2019-06-11 12:42:00
43 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 42 -- 43 -- 2019-06-11 12:43:00
44 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 42 -- 43 -- 44 -- 2019-06-11 12:44:00
45 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 42 -- 43 -- 44 -- 45 -- 2019-06-11 12:45:00
46 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 42 -- 43 -- 44 -- 45 -- 46 -- 2019-06-11 12:46:00
47 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 42 -- 43 -- 44 -- 45 -- 46 -- 47 -- 2019-06-11 12:47:00
48 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 42 -- 43 -- 44 -- 45 -- 46 -- 47 -- 48 -- 2019-06-11 12:48:00
49 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 42 -- 43 -- 44 -- 45 -- 46 -- 47 -- 48 -- 49 -- 2019-06-11 12:49:00
50 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 42 -- 43 -- 44 -- 45 -- 46 -- 47 -- 48 -- 49 -- 50 -- 2019-06-11 12:50:00
51 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 42 -- 43 -- 44 -- 45 -- 46 -- 47 -- 48 -- 49 -- 50 -- 51 -- 2019-06-11 12:51:00
52 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 42 -- 43 -- 44 -- 45 -- 46 -- 47 -- 48 -- 49 -- 50 -- 51 -- 52 -- 2019-06-11 12:52:00
53 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 42 -- 43 -- 44 -- 45 -- 46 -- 47 -- 48 -- 49 -- 50 -- 51 -- 52 -- 53 -- 2019-06-11 12:53:00
54 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 42 -- 43 -- 44 -- 45 -- 46 -- 47 -- 48 -- 49 -- 50 -- 51 -- 52 -- 53 -- 54 -- 2019-06-11 12:54:00
55 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 42 -- 43 -- 44 -- 45 -- 46 -- 47 -- 48 -- 49 -- 50 -- 51 -- 52 -- 53 -- 54 -- 55 -- 2019-06-11 12:55:00
56 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 42 -- 43 -- 44 -- 45 -- 46 -- 47 -- 48 -- 49 -- 50 -- 51 -- 52 -- 53 -- 54 -- 55 -- 56 -- 2019-06-11 12:56:00
57 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 42 -- 43 -- 44 -- 45 -- 46 -- 47 -- 48 -- 49 -- 50 -- 51 -- 52 -- 53 -- 54 -- 55 -- 56 -- 57 -- 2019-06-11 12:57:00
58 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 42 -- 43 -- 44 -- 45 -- 46 -- 47 -- 48 -- 49 -- 50 -- 51 -- 52 -- 53 -- 54 -- 55 -- 56 -- 57 -- 58 -- 2019-06-11 12:58:00
59 : 10 -- 11 -- 12 -- 13 -- 14 -- 15 -- 16 -- 17 -- 18 -- 19 -- 20 -- 21 -- 22 -- 23 -- 24 -- 25 -- 26 -- 27 -- 28 -- 29 -- 30 -- 31 -- 32 -- 33 -- 34 -- 35 -- 36 -- 37 -- 38 -- 39 -- 40 -- 41 -- 42 -- 43 -- 44 -- 45 -- 46 -- 47 -- 48 -- 49 -- 50 -- 51 -- 52 -- 53 -- 54 -- 55 -- 56 -- 57 -- 58 -- 59 -- 2019-06-11 12:59:00
View Code

 

以上是关于PHP获取指定分钟数的下一个整数倍的主要内容,如果未能解决你的问题,请参考以下文章

算法问题寻找全排列的下一个数

算法问题寻找全排列的下一个数

php 时间戳,能够取得具体时间量的时间错值吗?例如10分钟的时间戳是多少?刚接触php,谢谢了。

与指定数字相同的数的个数

HDU 4507 吉哥系列故事――恨7不成妻(数位DP+结构体)

PHP获取数组中的下一个元素