やかんブログ

[PHP]Zend Google Data Client Libraryで gCal APIs を使う[その5]

2007年09月14日(金)11:03|那須

那須です

 前回に引き続き、Zend_Gdata_Calendarの説明をしたいと思います。今回は Google Calendar に登録されている予定(カレンダーイベント)とカレンダーリストの取得メソッドを紹介したいと思います。

  • getCalendarEventEntry
  • getCalendarEventFeed
  • getCalendarListEntry
  • getCalendarListFeed

getCalendarEventEntry

 引数で指定した条件に合致するカレンダーイベントを1つ取得します。条件に合うイベントが複数あっても、取得するのは1つになります。そのため、イベントのID等がわかっている場合に使用します。

 複数のイベントを取得したい場合は、次項の getCalendarEventFeed()メソッドを使います。

引数

  • $location
    • Zend_Gdata_Queryオブジェクト、またはそれを継承したオブジェクト
    • または URI文字列
    • デフォルト:null

 取得したいカレンダーイベントの条件指定に用います。

 Zend_Gdata_Query はURLを作るクラスです。APIの種類毎に子クラスがあり、カレンダーイベントを取得する用に Zend_Gdata_Calendar_EventQueryクラスがあります。

戻り値

  • Zend_Gdata_Calendar_EventEntrytオブジェクト

$calEntry = $gCal->getCalendarEventEntry($eventQuery); echo $calEntry->title.”\n”; echo $calEntry->content.”\n”; echo date(‘Y-m-d’, strtotime($calEntry->when[0]->startTime)).”\n”;

getCalendarEventFeed

 引数で指定した条件に合致するカレンダーイベントの一覧を取得します。

※取得できるイベント数に制限があるかどうかは、現在調査中です・・・

引数

  • $location
    • Zend_Gdata_Queryオブジェクト、またはそれを継承したオブジェクト
    • または URI文字列
    • デフォルト:null

 取得したいカレンダーイベントの条件指定に用います。

戻り値

  • Zend_Gdata_Calendar_EventFeedオブジェクト
    • カレンダーイベント(Zend_Gdata_Calendar_EventEntryオブジェクト)の配列を格納しています

// カレンダーイベントのタイトル一覧を取得する $gCal->getCalendarEventFeed($eventQuery); foreach ($calFeed as $c ){ echo $c->title . “\n”; }

getCalendarListEntry

 引数で指定した条件に合致するカレンダーリストを1つ取得します。  複数のリストを取得したい場合は、次項の getCalendarListFeed()メソッドを使います。

引数

  • $location
    • Zend_Gdata_Queryオブジェクト、またはそれを継承したオブジェクト
    • または URI文字列
    • デフォルト:null

 取得したいカレンダーリストの条件指定に用います。

 実は、カレンダーリストの条件を指定する方法はわかっていません。getCalendarEventEntry() の場合は、 Zend_Gdata_Calendar_EventQueryオブジェクトを使って、条件の指定を行っていましたが、getCalendarListEntry()には、対応するオブジェクトがありません。方法がわかり次第、本稿に追記したいと思います。

戻り値

  • Zend_Gdata_Calendar_ListEntryオブジェクト

$calEntry = $gCal->getCalendarEventEntry(“http://www.google.com/calendar/feeds/default/allcalendars/full”); echo $calEntry->title.”\n”; echo $calEntry->id.”\n”;

getCalendarListFeed

 認証したアカウントが持つカレンダーリストを全て取得します。

※取得できるリスト数に制限があるかどうかは、現在調査中です・・・

引数

引数はありません

戻り値

  • Zend_Gdata_Calendar_ListFeedオブジェクト
      • カレンダーリスト(Zend_Gdata_Calendar_ListEntryオブジェクト)の配列を格納しています

// カレンダーリストのタイトル一覧を取得する $calLists = $gCal->getCalendarListFeed(); foreach ($calFeed as $c ){ echo $c->title . “\n”; }

 次回は、カレンダーイベントの登録を行うメソッドを紹介したいと思います。

この記事に関するお問い合わせはこちら

ページの先頭へ