我有一个unix时间戳记,保存在UTC 0
。我需要将其转换为GMT -08:00 ( PST - America LA ).
我需要使用1546329808471
的时间戳并将其转换为
Date format - m/d/Y
Time Format h:i a
我有
$time = new DateTime(date('h:i a', $pickup['timestamp']/1000)); // which returns the time in UTC 0.
$date = date('m/d/Y', $pickup['timestamp'] / 1000); // is the date in UTC 0.
返回
01/01/2019
位于08:03 am
,它适用于UTC 0,但不适用于PST。
答案 0 :(得分:1)
您只需使用setTimezone()
并创建DateTimeZone
类的对象即可获得结果。
$pst = new DateTimeZone('America/Los_Angeles');
$time = new DateTime(date('m/d/Y h:i a', $pickup['timestamp']/1000));
$time->setTimezone($pst);
print_r($time);
您可以从here
了解更多信息答案 1 :(得分:0)
您应该首先使用 date_default_timezone_set 设置默认时区,然后显示以下时间/日期:
date_default_timezone_set('America/Los_Angeles');
$time = new DateTime(date('h:i a', $pickup['timestamp']/1000));
$date = date('m/d/Y', $pickup['timestamp'] / 1000);