1
我有一個基於php的應用程序,我已經將GCal與OAuth 2.0 API集成在一起。一切工作正常,除了DST +1小時問題。此應用程序僅適用於英國,我還存儲用戶帳戶時區。如果我在凌晨3點加入任務,則在GCal上顯示我上午4點。這是當我添加任務時,在setTimeZone()中將時區硬編碼爲歐洲/倫敦時。此外,GCal賬戶設置也是歐洲/倫敦。這有點令人沮喪,所以請幫助我在我的代碼中更改哪些內容以處理此DST +1小時時差。這裏是代碼:DST在GCal事件中導致+1小時時差
$evt = new Event();
$evt->setDescription($txtDesc);
$evt->setSummary($taskTypeTxt);
#--Setting Event Date
$evtDT = new EventDateTime();
$evtDT2 = new EventDateTime();
$evtDT->setDateTime($startDate);
$evtDT->setTimeZone('Europe/London');
$evtDT2->setDateTime($endDate);
$evtDT2->setTimeZone('Europe/London');
$evt->setOriginalStartTime($evtDT);
$evt->setStart($evtDT);
$evt->setEnd($evtDT2);
$field = array('items/id');
$evtId = $cal->events->insert($user_email,$evt,$field);
通過在事件日期中添加+1小時來對此問題進行排序,如下所示:>> define(「GCAL_DST」,「+ 01:00」); ('H')。':'。date(''')。''date('''')。' I ')。':00'.GCAL_DST;現在工作良好。 – Manish 2012-05-11 08:37:38
謝謝。我做了一些改變,但我不知道他們是否工作到十月... – Leo 2012-05-15 16:24:50