2013-08-13 5 views
1

표준 시간대 옵션을 사용하여 이벤트 대상 FaceBook을 추가하려고합니다. "유럽/런던"으로 시간대가있는 영국의 이벤트를 추가하려고합니다. 이것이 내가 알아 차리는 것입니다. 나는 다음과 같은 시작 & 종료 시간을 보낼 때FaceBook 표준 시간대 및 이벤트 시간

[start_time] => 2014-08-24T20:00:00+0100 
[end_time] => 2014-08-24T22:00:00+0100 

나는 페이스 북 사이트에서 볼

[When] 
    Sunday, August 24, 2014 
    [Time] 
    8:00pm until 10:00pm 

와 시간을 얻을. 내 시간대는 UTC 인 London으로 설정됩니다. 나는 11 월에 이벤트를 보낼 때

[start_time] => 2014-11-24T20:00:00+0000 
[end_time] => 2014-11-24T22:00:00+0000 

[When] 
     Monday, November 24, 2014 
     [Time] 
     9:00pm until 11:00pm 

로 표시지고 이것은 예상 된 동작입니다. 11 월 24 일에 시간이 조정되고 오후 8 시가 올바르게 표시됩니까?

감사 린

답변

3

하나 개의 작은 수정. 당신은 말했다 :

내 시간대가 UTC

Europe/London 영역은 일반적으로 GMT라고 겨울에 UTC+00:00입니다있는 런던으로 설정되어 있습니다. 여름에는 UTC+01:00으로 바뀝니다. 일반적으로 BST라고합니다. 런던 UTC라고 말하는 것은 정확하지 않습니다. 나는 당신이 이것을 이미 알고 있었다고 생각합니다, 나는 다른 사람들을 위해서 여기에 그것을 말하고 있습니다.

불행히도, 귀하가 묘사하는 행동은 Facebook에 대한 것으로 예상됩니다. 페이스 북이 당신이 Europe/London에 있음을 알지 못한다는 사실에 달려 있습니다. 로그인하면 JavaScript의 new Date().getTimezoneOffset()에서 현재 시간대 오프셋을 가져옵니다. 현재는 UTC+01:00이므로 사용자로 페이지를 볼 때 이벤트에 적용되는 오프셋입니다. 오프셋이 변경되지 않거나 다음 전환 이후까지 향후 이벤트 시간을 보지 않을 것이라는 잘못된 가정을합니다.

Facebook 그래프 API는 user 개체에서이를 나타냅니다. 숫자가 숫자 인 timezone 속성이 있습니다. 나는 페이스 북 개발자들이 timezone tag wiki을 읽지 않았다고 생각한다. 여기서 "Time Zone! = Offset"을 분명히한다.

11 월 24 일에 시간이 조정되고 오후 8 시가 올바르게 표시됩니까?

예. 사용자가 BST에서 GMT 로의 다음 전환 후 which is on October 27th this year 후에 로그인하는 즉시 정확한 시간이 표시됩니다.

+1

감사합니다. 자세히 설명해 주셔서 감사합니다. 귀하의 회신에서 나는 페이스 북에 시간을 올바르게 보내고 있고 다른 모든 위치에서이 표준 시간대 형식을 사용해야한다고 가정합니다. –