1
我给我的用户一个链接,他们可以用它们将我的系统中的约会放在Outlook等日历软件中......使用iCalendar URL。iCalendar夏令时
我生成使用此代码文件中的日期:
echo "DTSTART;TZID=" . date_default_timezone_get() . ":" . strftime('%Y%m%d', strtotime($app->app_start)) . 'T' . strftime('%H%M%S', strtotime($app->app_start)) . '' . $eol;
echo "DTEND;TZID=" . date_default_timezone_get() . ":" . strftime('%Y%m%d', strtotime($app->app_end)) . 'T' . strftime('%H%M%S', strtotime($app->app_end)) . '' . $eol;
这一直工作正常。但是现在我们处于夏令时,夏令时中的所有约会在我的Outlook中显示1小时太晚。 DST之前的任命都可以。
所以,例如在我的ICS:
DTSTART; TZID =欧洲/布鲁塞尔:20150318T083000 DTEND; TZID =欧洲/布鲁塞尔:20150318T090000
这正确地显示在我的日历,从08:30直到09:00
DTSTART; TZID =欧洲/布鲁塞尔:20150407T083000 DTEND; TZID =欧洲/布鲁塞尔:20150407T090000
这是我的问题,这说明错误在我的日历:从09:30至10:30。
我该如何解决这个问题?
谢谢,我将欧洲/布鲁塞尔时区添加到VTIMEZONE,它现在可以工作。 一旦有人需要欧洲/布鲁塞尔VTIMEZONE: 'BEGIN:VTIMEZONE TZID:欧洲/布鲁塞尔 X-LIC-地点:欧洲/布鲁塞尔 BEGIN:日光 TZOFFSETFROM:+0100 TZOFFSETTO:+0200 TZNAME :CEST DTSTART:19700329T020000 RRULE:FREQ = YEARLY; BYMONTH = 3; BYDAY = -1SU END:日光 BEGIN:STANDARD TZOFFSETFROM:0200 TZOFFSETTO:0100 TZNAME:CET DTSTART:19701025T030000 RRULE: FREQ = YEARLY; BYMONTH = 10; BYDAY = -1SU END:STANDARD END:VTIMEZONE' – user1026090 2015-04-02 14:54:49