Google API的示例/演示代码非常清楚如何更新事件标题,似乎每个人都喜欢将其复制到自己的教程中…我可以使用该示例轻松地更新事件的标题、描述和位置,但我不能使用它来更新"when"属性,该属性由包含开始和结束日期/时间的数组组成。
下面的代码不返回错误,但也不更新日期和时间:
if ($eventOld = getEvent($client, $eventId)) {
//echo "Old title: " . $eventOld->title->text . "<br />n";
$eventOld->title = $gdataCal->newTitle($title);
$eventOld->where = array($gdataCal->newWhere($where));
$eventOld->content = $gdataCal->newContent("$description");
$eventOld->when[startTime] = "{$startDate}T{$startTime}:00.000{$tzOffset}:00";
$eventOld->when[endTime] = "{$endDate}T{$endTime}:00.000{$tzOffset}:00";
print $startDate;
try
{
$eventOld->save();
}
catch (Zend_Gdata_App_Exception $e)
{
var_dump($e);
return null;
}
//return $eventNew;
}
else
{
return null;
}
您提交给错误的变量,$eventOld
在进行更改之前创建一个新的变量,然后提交你的数据。
$eventNew = getEvent($client, $eventId)
$eventNew->when[startTime] = "{$startDate}T{$startTime}:00.000{$tzOffset}:00";
$eventNew->when[endTime] = "{$endDate}T{$endTime}:00.000{$tzOffset}:00";
when
是startTime/endTime对的数组。