저는 시간대를 gmt로 변환하는 스크립트를 작성했는데 그 반대의 경우도 마찬가지입니다 ... 그러나 DST에 대한 동일한 기능을 timzones에서 확인하려고하면 잘못된 결과가 나타납니다 . 여기 ............ 내 기능이 간다입니다시간을 UTC로 변환 할 때 잘못된 결과가 발생했습니다.
function ConvertOneTimezoneToAnotherTimezone($time,$currentTimezone,$timezoneRequired)
{
$current_zone = new DateTimeZone($currentTimezone);
// print_r($current_zone);
//$gmt = new DateTimeZone('GMT');
$date = new DateTime($time, $current_zone);
//var_dump($date);
//$date->setTimezone($gmt);
$date->setTimezone(new DateTimeZone($timezoneRequired));
return $date->format('Y-m-d H:i:s');
// Convert it back to Original timezone
//$date->setTimezone($current_zone);
//return $date->format('Y-m-d H:i:s');
}
$time='2011-03-29 9:53:00';
echo "Current Date/Time is = ".
ConvertOneTimezoneToAnotherTimezone($time,'Asia/Kolkata','UTC');
이 기능은 '아시아/콜카타'에 대한 잘 작동하지만 난 미국/뉴욕 시간대로하려고 할 때. 나는 잘못된 결과를 얻고 있습니다 ....... 코드를 확인하고 오류를 수정하는 데 도움이됩니다.
왜 당신은 질문을 부인 했습니까? – Will