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

标签 php mysql codeigniter date

我的数据库里有这个:

enter image description here

我想在选择框中显示医生可用时间,相差 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

我试过这个 select '2015-10-12 02:00:00' + INTERVAL 20 MINUTE 但它只显示一个值,我需要所有可能的组合。

最佳答案

用户 DateTime()DateInterval()DatePeriod() 每 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');
}

Demo

关于php - 如何在 php/codeigniter 或 mysql 中获取相差 20 分钟的两个日期的所有组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33082758/

相关文章:

java - 在 Hibernate 中使用多个表获取计数?

mysql - 使用 Python 从我的机器访问单独的 MySQL 服务器 - 如何? [Mac OS X]

php - 代码点火器 : Call to a member function num_rows() on a non-object

php - 如何在php中获取图像类型

PHP SOAP 客户端教程/推荐?

php - 当我使用锁屏特征时,Laravel 5.7 重定向太多次

php - 将时间范围分割成多个部分

mysql - PDO插入最大id+1而不是auto_increment

php - 如何处理Codeigniter中的4xx和5xx错误?

javascript - 带有表单的自定义 URL