1

我需要一个 php 脚本来显示从 01:00:00 到 24:00:00 的所有时间。
到目前为止我已经这样做了:(这段代码在一个while循环中)

  $hour++;
  $hour_after_midnight = date('G:i:s',mktime(1,0,0,1,1,2011));
  $next_hour = date($this_hour,strtotime('+1 hour'));
  echo $next_hour;

但上面的代码返回:

1:00:00 x24次

我认为我使用的日期功能是错误的。
任何帮助将不胜感激

4

3 回答 3

4
<?php
$hour = 0;
while($hour++ < 24)
{
    $timetoprint = date('G:i:s',mktime($hour,0,0,1,1,2011));
    echo $timetoprint;
}
?>

那会按照您尝试的方式进行吗?我假设您出于某种原因需要日期变量采用该形式。否则评论是要走的路。

于 2011-07-19T08:36:00.170 回答
1

尝试

$this_hour = $next_hour; 

(之后echo),看起来您忘记更新循环中下一个时间偏移的时间偏移。

您可能想这样做,$hour++但该变量未在此单个语句旁边的代码中使用。

但是这个答案可能与您的大多数代码看起来都是错误的一样错误(完全尊重),如果您更好地描述您在编码时遇到的实际问题,那么这里的用户可以提供更好的答案,请参阅Edgar Velasquez的答案Lim还有一些其他的代码示例。

比如你有没有理解的问题datemktime或者strtotime函数具体有哪些问题?

当您在循环中操作变量时,您是否难以理解变量会发生什么?

于 2011-07-19T08:36:17.580 回答
0

试试这个:

$iTimestamp = mktime(1,0,0,1,1,2011);
for ($i = 1; $i < 24; $i++) {
    echo date('H:i:s', $iTimestamp) . "\n<br />";
    $iTimestamp += 3600;
}
于 2011-07-19T08:48:08.763 回答