我需要一种可以将给定日期从一个时区转换为另一个时区的方法。类似的东西:
日期格式: 2010-07-13 12:34:00
$newDestinationDate = $convertTimeZoneDate($dateTime, $serverTimeZone, $userTimeZone)
请帮帮忙?
答案 0 :(得分:2)
如果您使用的是PHP> 5.2.0(这至少应该是你应该做的):
function convertTimeZoneDate($dateTime, $serverTimeZone, $userTimeZone)
{
$serverTimeZone = new DateTimeZone($serverTimeZone);
$userTimeZone = new DateTimeZone($userTimeZone);
$dateTime = new DateTime($dateTime, $serverTimeZone);
$dateTime->setTimezone($userTimeZone);
return $dateTime->format('Y-m-d H:i:s');
}
$newDestinationDate = convertTimeZoneDate('2010-07-13 12:34:00', 'Europe/London', 'America/Los_Angeles');
// by the way, it's convertTimeZoneDate() and not $convertTimeZoneDate()
答案 1 :(得分:0)
谢谢Stefan。我还需要一个我自己发现的查询:)。
我需要在不同时区的当前时间,这可以通过以下声明来完成:
date_default_timezone_set($newTimeZone);
$dateTime = new DateTime();
$newZoneCurrentDateTime = $dateTime->format('Y-m-d H:i:s');