如何根据日期将unix时间戳正确转换为BST或GMT?

时间:2017-06-19 13:04:19

标签: php date timezone

我可以很容易地写一个笨拙的功能来做这件事,但是有一种简单的方法可以从时间戳中获得“正确”的英国本地日期/时间,而不是一直是GMT(在一年中的某些时候 - 像现在 - 将落后一小时。)

由于

1 个答案:

答案 0 :(得分:1)

英国更改时区的确切日期按年更改,因此我不建议您自己尝试实施逻辑。您可以将DateTime对象初始化为正确的时区(欧洲/伦敦),然后将其设置为您的时间戳:

<?php
$timestamp = 1500000000;

$dateTime = new \DateTime(null, new DateTimeZone('Europe/London'));
$dateTime->setTimestamp($timestamp);

echo $dateTime->format('Y-m-d H:i:s');

// 2017-07-14 03:40:00