PHP의 timezone_offset_get() 함수는 지정된 시간대가 GMT(그리니치 표준시)로부터 얼마나 떨어져 있는지, 즉 시간대 오프셋을 초 단위로 반환하는 함수입니다. 이 함수는 DateTimeZone 객체와 기준이 되는 날짜·시간 정보를 담은 DateTime 객체를 인수로 받아, 서로 다른 시간대 간의 시차를 계산할 때 유용하게 활용됩니다.
문법(Syntax)
timezone_offset_get(obj, datetime)
매개변수(Parameters)
obj − 오프셋을 계산할 대상이 되는 DateTimeZone 객체를 지정합니다.
datetime − 오프셋 계산의 기준이 되는 날짜와 시간을 담고 있는 DateTime 객체를 지정합니다.
반환값(Return)
timezone_offset_get() 함수는 성공 시 시간대 오프셋을 초(second) 단위로 반환하며, 실패 시 FALSE를 반환합니다.
예제(Example)
다음은 timezone_offset_get() 함수의 사용 예입니다 −
<?php
$tz = timezone_open("America/Chicago");
$datetime = date_create("now", timezone_open("Europe/Amsterdam"));
echo timezone_offset_get($tz, $datetime);
?>
실행 결과(Output)
-18000
위 예제에서는 미국 시카고(America/Chicago) 시간대를 기준으로, 암스테르담(Europe/Amsterdam) 시간대의 현재 날짜·시간에 대한 오프셋을 계산합니다. 결과값인 -18000은 해당 시점에 시카고가 GMT보다 5시간(18,000초) 늦다는 것을 의미합니다. 이처럼 일광절약시간(DST) 적용 여부에 따라 오프셋 값이 달라질 수 있으므로, 정확한 시차 계산이 필요한 경우 반드시 기준이 될 DateTime 객체를 함께 전달해야 합니다.