[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”; }
次回は、カレンダーイベントの登録を行うメソッドを紹介したいと思います。