date()返回不一致的时间

时间:2012-07-26 16:24:00

标签: php datetime

我在使用PHP 5.3.8和默认时区设置为欧洲/苏黎世的Mac Book Pro上的本地apache2网络服务器上有以下PHP代码:

$now = time();
$in5min = $now + 300;

echo "now: " . date('H:m:s', $now);
echo "<br>in 5 min: " . date('H:m:s', $in5min);

echo "<br>now using date only: " . date('H:m:s');

结果如下(2012年7月26日18:16:12运行):

now: 18:07:01  
in 5 min: 18:07:01  
now using date only: 18:07:01 

请注意,我可以刷新页面 - 秒数更改,小时和分钟保持不变。所以5分钟后它仍然是18:07

我的网络服务器设置有什么问题?为什么时间计算不起作用?

3 个答案:

答案 0 :(得分:12)

正确的格式字符串为i分钟,而不是mm is for months.

date('H:i:s');

答案 1 :(得分:0)

你使用了错误的interval,但我建议改为使用DateTime::add

<?php
$date = date_create('2000-01-01');
date_add($date, date_interval_create_from_date_string('10 days'));
echo date_format($date, 'Y-m-d');
?> 

答案 2 :(得分:0)

哈哈可能会打我的脸:约会('H:m:s')是完全错误的。 “m”是月份,而不是分钟。使用日期('H:i:s')代替