带有时间戳的PHP日期零返回1小时 [英] PHP Date with Timestamp zero returns 1 Hour

查看:134
本文介绍了带有时间戳的PHP日期零返回1小时的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如果我执行以下操作:

date("H:i:s", 0);

返回 01:00:00 ,而应该给出 00:00:00

可能与本地主机的时区有关吗? (UTC + 1)

It returns 01:00:00, while it should give 00:00:00.
Might it have something to do with the Timezone of my localhost? (UTC+1)

如果是这样,我该如何解决?

If so, how can I fix this?

推荐答案

在调用 date()之前设置时区。您将使用 date_default_timezone_set()

Set the time zone before calling date(). You will use date_default_timezone_set() for that:

date_default_timezone_set('UTC');
echo date("H:i:s", 0);

查看实际操作

如果您要进行时区敏感操作,别忘了将其重新设置。

Don't forget to set it back if you're doing timezone sensitive operations.

或:

这是使用 DateTime()

$dt = new DateTime('@0', new DateTimeZone('UTC'));
echo $dt->format('H:i:s');

查看实际操作

这篇关于带有时间戳的PHP日期零返回1小时的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆