DateTime->格式(“U”)不返回带有时区信息的值

时间:2013-02-20 03:09:49

标签: php datetime timezone

在PHP 5.2中,我使用以下代码从DateTime对象获取时间戳。

$dateTime = new DateTime("now", new DateTimeZone("America/Los_Angeles") );

echo $dateTime->format("U");

问题是格式(“U”)只返回服务器时间戳,即UTC。

如何让它从太平洋时区(洛杉矶)返回时间戳?

2 个答案:

答案 0 :(得分:6)

您的时间戳概念不正确,时间戳时区独立,它被定义为自1970年1月1日午夜协调世界时(UTC)以来经过的秒数< /强>

答案 1 :(得分:-1)

尝试在PHP脚本的顶部设置时区。我认为时间戳总是UTC。使用date()函数将其格式化为您需要的内容。

    // set timezone to pacific time
    date_default_timezone_set('America/Los_Angeles');