Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 跨午夜循环_Php_For Loop - Fatal编程技术网

Php 跨午夜循环

Php 跨午夜循环,php,for-loop,Php,For Loop,我花了很多时间试图找出如何创建一个循环,该循环将在给定的$start_time和$end_time之间以HH:MM格式将时间增加一小时。例如,如果我有$start\u time=“22:00”和$end\u time=“04:00”,则输出应该如下所示: 22:00 23:00 00:00 01:00 02:00 03:00 04:00 你知道怎么做吗?这不是一个非常优雅的解决方案,但你可以这样做: <?php $start_time = "22:00"; $end_time

我花了很多时间试图找出如何创建一个循环,该循环将在给定的$start_time和$end_time之间以HH:MM格式将时间增加一小时。例如,如果我有$start\u time=“22:00”和$end\u time=“04:00”,则输出应该如下所示:

22:00

23:00

00:00

01:00

02:00

03:00

04:00

你知道怎么做吗?

这不是一个非常优雅的解决方案,但你可以这样做:

<?php
$start_time = "22:00";
$end_time="04:00";

$timestamp = strtotime($start_time);
while(date('H:i', $timestamp) !== date('H:i', strtotime($end_time) + 60*60)){
    echo date('H:i', $timestamp) . "\n";
    $timestamp += 60*60;
}

您好,欢迎来到stackoverflow!我花了这么多时间试图弄清楚您是否可以添加到目前为止得到的内容?如果您使用DateTime类,其内置的modify和add方法将为您处理该转换。如果您只是以数字方式进行转换,
%
将非常有帮助。