[GoogleAPI][Calendar][PHP] Events: Update DateTime – 日曆更新時間範例 (Google_Service_Calendar_EventDateTime)

緣由

Google Calendar API 目前文件版本在Events Update上竟然沒說明DateTime的相關set方法。


基本文件

Google Calendar API

Events: update

以上目前版本並無提及如何Update Start & End DateTime,僅提到使用nested object型態。


PHP範例CODE

    // First retrieve the event from the API.
    $event = $service->events->get('primary', 'eventId');

    $event->setSummary('Appointment at Somewhere');

    // DateTime nested object method
    $start = new Google_Service_Calendar_EventDateTime();
    $start->setTimeZone('Asia/Taipei');
    $start->setDateTime('2017-04-25T19:15:00');

    $event->setStart($start);

    $updatedEvent = $service->events->update('primary', $event->getId(), $event);

    // Print the updated date.
    echo $updatedEvent->getUpdated();

從Error Message可以知道setStartsetEnd要使用 Google_Service_Calendar_EventDateTime()…,

Google_Service_Calendar_EventDateTime API Doc (非官方)

物件指向設定方式

文件沒提到,另一個直覺的想法就是這樣了:

$event->start->timeZone = 'Asia/Taipei';
$event->start->dateTime = '2017-05-12T19:15:00';

DateTime格式使用ISO,Date的格式寫入部分要小心有雷,寫DateTime就好。

以上不解釋…夠雷

Leave a Reply

Your email address will not be published. Required fields are marked *