如何在php/codeigniter或mysql中获得两个日期相差20分钟的所有组合

如何在php/codeigniter或mysql中获得两个日期相差20分钟的所有组合,php,mysql,codeigniter,date,Php,Mysql,Codeigniter,Date,我的数据库中有: 我想在选择框中显示医生可用时间,相差20分钟,如 2015-10-12 02:00:00至2015-10-12 04:00:00 我需要的是 02:00:00 02:20:00 02:40:00 03:00:00 03:20:00 03:40:00 04:00:00 我尝试了这个选择'2015-10-12 02:00:00'+间隔20分钟,但它只显示一个值,我需要所有可能的组合。用户日期时间(),日期间隔()每20分钟循环一次该日期周期并输出时间。注意,我们必须在结束时间上

我的数据库中有:

我想在选择框中显示医生可用时间,相差20分钟,如

2015-10-12 02:00:002015-10-12 04:00:00 我需要的是

02:00:00
02:20:00
02:40:00
03:00:00
03:20:00
03:40:00
04:00:00
我尝试了这个
选择'2015-10-12 02:00:00'+间隔20分钟
,但它只显示一个值,我需要所有可能的组合。

用户
日期时间()
日期间隔()
每20分钟循环一次该日期周期并输出时间。注意,我们必须在结束时间上加一分钟,因为默认情况下,
DatePeriod
不包括最后一个结束时间。添加该分钟将得到最后一次包含的时间

$start    = new DateTime('2015-10-12 02:00:00');
$end      = (new DateTime('2015-10-12 04:00:00'))->modify('+1 minute');
$interval = new DateInterval('PT20M');
$period   = new DatePeriod($start, $interval, $end);
foreach($period as $date) {
    echo $date->format('H:i:s');
}

在以下时间段之间使用mysql:-在date1和date2@Rahautos你能给我举个例子吗?这在应用层更容易做到,除非数据库有一个包含所有时隙的表。@john这段代码很好用。但为什么在编辑器中显示错误?我不能肯定,但您的编辑器可能不知道此代码使用的某些语法。您使用的编辑器是什么?我使用的是dream viewer:pAhh,这并不是最好的编辑器,特别是对于PHP代码。这可以解释为什么它不能处理它。