2016-04-15 51 views
0

所以我有一个数据库中的时间戳是这样的:2016-03-31 21:10:15此得到的以dB为单位设置为服务器现在timezonedate_default_timezone_set("America/Los_Angeles");转换TIMESTAMP和时区到不同的时区

当我列出我需要将其转换为用户的数据时区,我已经存储在别的地方,有没有办法将其转换并显示在不同的时区?

因此,如果是“America/Los_Angeles”下午5:00,我需要将它转换为New_York,例如显示那个时间,但是对于New_York时区,我想你明白我的意思了。

+0

请你帮个忙,为将来的项目和字面存储一切,UTC,只有格式为特定的时区显示的时候。这是一个更多的工作,但具有一致的时间格式会为您的理智创造奇迹。 – Sammitch

回答

2

使用datetime对象,你可以玩的时区,以你的心脏的内容:

$dateTime = '2016-03-31 21:10:15'; 
$originalTimezone = 'America/Los_Angeles'; 
$newTimezone = 'America/New_York'; 

$dto = new DateTime($dateTime, new DateTimeZone($originalTimezone)); 
$dto->setTimezone(new DateTimeZone($newTimezone)); 

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