Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Facebook graph api FaceBook时区和事件时间_Facebook Graph Api_Timezone - Fatal编程技术网

Facebook graph api FaceBook时区和事件时间

Facebook graph api FaceBook时区和事件时间,facebook-graph-api,timezone,Facebook Graph Api,Timezone,我正在尝试在启用时区选项的情况下向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 从FaceB

我正在尝试在启用时区选项的情况下向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 
从FaceBook网站查看时。我的时区设置为伦敦,即UTC。但当我在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点会正确显示吗

谢谢
林恩

一个小的修正。你说:

我的时区设置为伦敦,即UTC

Europe/London
区域在冬季为
UTC+00:00
,通常称为
GMT
。在夏季,它将切换到
UTC+01:00
。这通常被称为
BST
。说伦敦是UTC是不准确的。我想你已经知道了,我只是在这里为其他人说

不幸的是,你所描述的行为是Facebook所期待的。归根结底,Facebook并不知道你在
欧洲/伦敦
。它只是在您登录时从JavaScript的
new Date().getTimezoneOffset()
获取当前时区偏移量。由于当前为
UTC+01:00
,这是作为用户查看页面时应用于事件的偏移量。它提出了一个有缺陷的假设,即偏移量不会改变,或者在下一次转换之前,您不会查看未来的事件时间

Facebook Graph API在对象中表示这一点。它的
时区
属性只是一个数字。我猜Facebook的开发者还没有读过我明确指出的“时区!=偏移量”的地方

时间会调整吗?11月24日晚上8点会正确显示吗


对。下一次从英国夏令时切换到格林尼治时间后,只要用户登录,它就会显示正确的时间。

感谢Matt对此的详细解释。从您的回复中,我假设,我正确地将时间发送到FaceBook,并且时区的这种格式应该适用于所有其他位置。