删除5个小时

时间:2009-04-20 09:56:01

标签: php datetime strtotime

我正在使用strtotime从一些有绳索的XML创建时间戳,但时区不正确。

如何从中删除5个小时?

2 个答案:

答案 0 :(得分:9)

如果您知道时区,可以使用date_default_timezone_set()

进行设置

当你设置了它时,你可以在strtotime()中执行此操作。

strtotime("-5 hours", $time);

答案 1 :(得分:3)

您可能需要以下内容:

date('Y-m-d H:i:s', time() - 18000);

这将字符串格式化为日期和时间,以当前时间为单位,以秒为单位 - 18000秒(5小时)。您可以调整要减去的数字,以调整您调整的小时数。如果将18000写为(60 * 60 * 5),可能会更清楚。

对于排序与美国不同的字符串, strtotime()会产生意外后果。欧洲表示法(01/02/2009)将被视为1月2日,意思是2月1日。这是我可以用olafur的解决方案看到的唯一问题,除了它是可靠的,但无论是这一个还是那个都可以。