PHP:获取当前区域的时间

时间:2011-02-16 15:21:37

标签: php timezone

我有一个用户的时区(他从列表中选择) 我有UTC时间(不是当前时间) 所以我需要像PHP的GetTimeForRegion(时间,时区)。是否有这样的功能或图书馆或服务?

4 个答案:

答案 0 :(得分:8)

您可以使用DateTime :: setTimezone()。如果您的UTC日期是UNIX时间戳,您可以使用以下代码:

$date = new DateTime();
$date->setTimezone(new DateTimeZone('UTC'));
$date->setTimestamp(1297869844);
$date->setTimezone(new DateTimeZone('Europe/Paris'));

echo $date->format('Y-m-d H:i:s');
// Will print 2011-02-16 16:24:04

答案 1 :(得分:1)

日期('r')或日期('c')可以帮助您。

echo date('r')打印Thu, 16 Feb 2011 16:01:07 +0200

echo date('c')打印2011-02-16T16:01:07+02:00

答案 2 :(得分:0)

您需要查看PHP中的Date/Time API。我强烈建议你远离php中的gmdate和旧日期函数。

在您的情况下,您应该询问用户Olson based时区。

Artefact2的代码可以解决问题。

答案 3 :(得分:0)

请改写这个:
$ date = date(“ Y-m-d H:i:s”,time());

所以Y表示年份
m表示月份
d表示日期 H从0-24小时开始
h从0到12小时 我有分钟数
得到秒数

相关问题