将分钟添加到DateTime,直到达到该时间段


Add minutes to DateTime till it reaches the period

大家好,这是我下面的代码,

        for($minutes_to_add=30;$start_date->format('Y-m-d H:i') == $end_date->format('Y-m-d H:i');$minutes_to_add+30)
        {
            $start_date->add(new DateInterval('PT' . $minutes_to_add . 'M'));
            $time_period = $start_date->format('Y-m-d H:i');
            echo $time_period;
            echo '<br>';
        }

我正在尝试将30 minutes添加到$start_date,直到它到达end_date。。。它没有显示任何内容。。。没有错误消息。。。start_dateend_date都在newDatetime()内部,有什么方法可以解决这个问题吗??在php中

这将是一个"更干净"的解决方案,注意到$start_date$end_date是Datetime对象:

 for($minutes_to_add=30;$start_date->getTimestamp() <= $end_date->getTimestamp();$minutes_to_add+30)
 {
     $start_date->add(new DateInterval('PT' . $minutes_to_add . 'M'));
     $time_period = $start_date->format('Y-m-d H:i');
     echo $time_period;
     echo '<br>';
 }