意外に日本語の情報が少なく時間がかかった。プログラマ向けリファレンスガイド Zend Frameworkを参考に設定したのでメモ。
終日設定も判りにくいので注意です。
require_once 'Zend/Loader.php'; Zend_Loader::loadClass('Zend_Gdata'); Zend_Loader::loadClass('Zend_Gdata_ClientLogin'); Zend_Loader::loadClass('Zend_Gdata_Calendar'); //$user = ''; // ユーザ名 ※私の場合はここは設定ファイルに読み込ませています //$pass = '';// パスワード $service = Zend_Gdata_Calendar::AUTH_SERVICE_NAME; // ログイン $client = Zend_Gdata_ClientLogin::getHttpClient($user,$pass,$service); $gdataCal = new Zend_Gdata_Calendar($client); // 新規イベントの作成 $newEvent = $gdataCal->newEventEntry(); // イベントの見出し $newEvent->title = $gdataCal->newTitle( $url . " 更新日"); // イベントの期間 $startDate = $limitdate; // 開始日時 $startTime = '00:00'; // 開始時刻 //終了日は翌日とセットし終日イベント扱いとする list($yy, $mm, $dd) = explode('-', $limitdate); $limitend = strtotime("+1 day", strtotime("$yy/$mm/$dd")); $limitend = date("Y-m-d",$limitend); $endDate = $limitend; // 終了日時 $endTime = '00:00'; // 終了時刻 $tzOffset = '+09'; // タイムゾーンを日本に設定 $when = $gdataCal->newWhen(); //$when->startTime = "{$startDate}T{$startTime}:00.000{$tzOffset}:00"; //$when->endTime = "{$endDate}T{$endTime}:00.000{$tzOffset}:00"; $when->startTime = "{$startDate}"; $when->endTime = "{$endDate}"; $newEvent->when = array($when); //メール通知設定 $reminder = $gdataCal->newReminder(); $reminder->method = "email"; $reminder->days = "7"; //minutes、hours、daysを指定 // 既存のイベントの when プロパティにリマインダーを適用します $when = $newEvent->when[0]; $when->reminders = array($reminder); // イベントの説明 $newEvent->content = $gdataCal->newContent( SITENAME . "更新日設定"); // イベントの場所 $newEvent->where = array($gdataCal->newWhere("")); // イベントをカレンダーへ反映 $createdEvent = $gdataCal->insertEvent($newEvent);