3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php $lastDate = '1452504837'; $interval = 'P0Y0M1D'; $lastJob = new \Datetime(); $lastJob->setTimestamp($lastDate); echo 'Last Sent: '.$lastJob->format('Y/m/d')."\n"; $interval = new DateInterval($interval); echo 'Interval: '.$interval->format('%y years, %m months, %d days %H:%I:%S')."\n"; $currentJob = new \Datetime(); echo 'Today: '.$currentJob->format('Y/m/d')."\n\n"; $sinceLastJob = $lastJob->diff($currentJob); echo 'Since: '.$sinceLastJob->format('%y years, %m months, %d days %H:%I:%S')."\n"; $untilNextJob = $lastJob->add($interval)->diff($currentJob); echo 'Until: '.$untilNextJob->format('%y years, %m months, %d days %H:%I:%S')."\n"; if ($untilNextJob < 0) { echo 'ready to send'; } else { echo 'not ready to send.'; }
based on nHRHg
Output for 7.0.20 - 7.2.0
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/01/13 Since: 0 years, 0 months, 2 days 05:59:13 Until: 0 years, 0 months, 1 days 05:59:13 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 7.0.6
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/05/21 Since: 0 years, 4 months, 10 days 03:11:19 Until: 0 years, 4 months, 9 days 03:11:19 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 7.0.5
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/04/03 Since: 0 years, 2 months, 22 days 23:09:38 Until: 0 years, 2 months, 21 days 23:09:38 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 7.0.4
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/03/10 Since: 0 years, 1 months, 28 days 11:16:40 Until: 0 years, 1 months, 27 days 11:16:40 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 7.0.3
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/03/18 Since: 0 years, 2 months, 7 days 12:43:41 Until: 0 years, 2 months, 6 days 12:43:41 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 7.0.2
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/03/23 Since: 0 years, 2 months, 11 days 18:57:21 Until: 0 years, 2 months, 10 days 18:57:21 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 7.0.1
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/03/24 Since: 0 years, 2 months, 12 days 22:01:28 Until: 0 years, 2 months, 11 days 22:01:28 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 7.0.0
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/03/27 Since: 0 years, 2 months, 15 days 23:54:33 Until: 0 years, 2 months, 14 days 23:54:33 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.6.21
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/05/02 Since: 0 years, 3 months, 21 days 06:03:38 Until: 0 years, 3 months, 20 days 06:03:38 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.6.20
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/04/10 Since: 0 years, 2 months, 29 days 22:11:52 Until: 0 years, 2 months, 28 days 22:11:52 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.6.19
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/03/08 Since: 0 years, 1 months, 25 days 19:26:03 Until: 0 years, 1 months, 24 days 19:26:03 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.6.18
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/03/15 Since: 0 years, 2 months, 4 days 04:24:06 Until: 0 years, 2 months, 3 days 04:24:06 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.6.17
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/03/20 Since: 0 years, 2 months, 8 days 15:56:43 Until: 0 years, 2 months, 7 days 15:56:43 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.6.16
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/03/28 Since: 0 years, 2 months, 17 days 00:44:17 Until: 0 years, 2 months, 16 days 00:44:17 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.6.15
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/03/29 Since: 0 years, 2 months, 18 days 01:33:55 Until: 0 years, 2 months, 17 days 01:33:55 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.6.14
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/04/14 Since: 0 years, 3 months, 3 days 07:16:21 Until: 0 years, 3 months, 2 days 07:16:21 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.6.13
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/04/15 Since: 0 years, 3 months, 4 days 07:55:19 Until: 0 years, 3 months, 3 days 07:55:19 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.6.12
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/04/20 Since: 0 years, 3 months, 8 days 22:24:49 Until: 0 years, 3 months, 7 days 22:24:49 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.6.11
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/04/24 Since: 0 years, 3 months, 13 days 04:51:13 Until: 0 years, 3 months, 12 days 04:51:13 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.6.10
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/04/25 Since: 0 years, 3 months, 14 days 06:56:48 Until: 0 years, 3 months, 13 days 06:56:48 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.6.9
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/04/27 Since: 0 years, 3 months, 16 days 12:23:20 Until: 0 years, 3 months, 15 days 12:23:20 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.6.8
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/04/30 Since: 0 years, 3 months, 18 days 20:52:06 Until: 0 years, 3 months, 17 days 20:52:06 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.5.35
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/05/23 Since: 0 years, 4 months, 11 days 16:06:44 Until: 0 years, 4 months, 10 days 16:06:44 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.5.34
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/04/11 Since: 0 years, 3 months, 0 days 00:25:44 Until: 0 years, 2 months, 30 days 00:25:44 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.5.33
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/03/09 Since: 0 years, 1 months, 26 days 22:24:58 Until: 0 years, 1 months, 25 days 22:24:58 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.5.32
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/03/17 Since: 0 years, 2 months, 6 days 08:21:53 Until: 0 years, 2 months, 5 days 08:21:53 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.5.31
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/03/21 Since: 0 years, 2 months, 9 days 19:08:03 Until: 0 years, 2 months, 8 days 19:08:03 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.5.30
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/04/01 Since: 0 years, 2 months, 21 days 03:25:08 Until: 0 years, 2 months, 20 days 03:25:08 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.5.29
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/04/17 Since: 0 years, 3 months, 5 days 22:13:03 Until: 0 years, 3 months, 4 days 22:13:03 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.5.28
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/04/21 Since: 0 years, 3 months, 10 days 01:44:37 Until: 0 years, 3 months, 9 days 01:44:37 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.5.27
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/04/22 Since: 0 years, 3 months, 11 days 03:22:00 Until: 0 years, 3 months, 10 days 03:22:00 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.5.26
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/04/26 Since: 0 years, 3 months, 15 days 09:38:18 Until: 0 years, 3 months, 14 days 09:38:18 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.5.25
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/04/29 Since: 0 years, 3 months, 17 days 17:04:14 Until: 0 years, 3 months, 16 days 17:04:14 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.5.24
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/05/24 Since: 0 years, 4 months, 12 days 23:32:05 Until: 0 years, 4 months, 11 days 23:32:05 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.4.44 - 5.4.45
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/01/13 Since: 0 years, 0 months, 2 days 05:59:17 Until: 0 years, 0 months, 1 days 05:59:17 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.4.42 - 5.4.43
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/01/13 Since: 0 years, 0 months, 2 days 05:59:18 Until: 0 years, 0 months, 1 days 05:59:18 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.4.40 - 5.4.41
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/01/13 Since: 0 years, 0 months, 2 days 05:59:19 Until: 0 years, 0 months, 1 days 05:59:19 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.4.38 - 5.4.39
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/01/13 Since: 0 years, 0 months, 2 days 05:59:20 Until: 0 years, 0 months, 1 days 05:59:20 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.4.37
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/01/13 Since: 0 years, 0 months, 2 days 05:59:21 Until: 0 years, 0 months, 1 days 05:59:21 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.4.35 - 5.4.36
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/01/13 Since: 0 years, 0 months, 2 days 05:59:22 Until: 0 years, 0 months, 1 days 05:59:22 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.4.32 - 5.4.34
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/01/13 Since: 0 years, 0 months, 2 days 05:59:23 Until: 0 years, 0 months, 1 days 05:59:23 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.3.29, 5.4.29 - 5.4.31
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/01/13 Since: 0 years, 0 months, 2 days 05:59:24 Until: 0 years, 0 months, 1 days 05:59:24 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.4.26 - 5.4.28
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/01/13 Since: 0 years, 0 months, 2 days 05:59:25 Until: 0 years, 0 months, 1 days 05:59:25 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.4.23 - 5.4.25
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/01/13 Since: 0 years, 0 months, 2 days 05:59:26 Until: 0 years, 0 months, 1 days 05:59:26 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.3.28, 5.4.20 - 5.4.22
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/01/13 Since: 0 years, 0 months, 2 days 05:59:27 Until: 0 years, 0 months, 1 days 05:59:27 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.3.27, 5.4.17 - 5.4.19
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/01/13 Since: 0 years, 0 months, 2 days 05:59:28 Until: 0 years, 0 months, 1 days 05:59:28 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.3.24 - 5.3.26, 5.4.14 - 5.4.16
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/01/13 Since: 0 years, 0 months, 2 days 05:59:29 Until: 0 years, 0 months, 1 days 05:59:29 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.
Output for 5.3.21 - 5.3.23, 5.4.11 - 5.4.13
Last Sent: 2016/01/11 Interval: 0 years, 0 months, 1 days 00:00:00 Today: 2016/01/13 Since: 0 years, 0 months, 2 days 05:59:30 Until: 0 years, 0 months, 1 days 05:59:30 Notice: Object of class DateInterval could not be converted to int in /in/hQmEk on line 17 not ready to send.