gpt4 book ai didi

php - 尝试使用 PHP 从日历中获取事件列表

转载 作者:行者123 更新时间:2023-12-02 05:34:17 25 4
gpt4 key购买 nike

我正在尝试从日历中获取事件列表。我在看developers.google.com/google-apps/calendar/v3/reference/calendarList/list

我假设 $service 是从 $cal = new apiCalendarService($client); 创建的该文档不是很具体。

当我尝试执行下面的代码时,出现错误PHP fatal error :调用非对象上的成员函数 getItems()

但如果我这样做就可以了

$calendarList = $cal->calendarList->listCalendarList();
print "<h1>Calendar List</h1><pre>" . print_r($calendarList, true) . "</pre>";

另外,如果我尝试示例代码@

developers.google.com/google-apps/calendar/v3/reference/events/list#examples我得到同样的错误PHP fatal error :调用非对象上的成员函数 getItems()

这个有效:

$events = $cal->events->listEvents('rtparies@gmail.com');    print "<h1>Events</h1><pre>" . print_r($events, true) . "</pre>";[/PHP]

这失败了:

foreach($events->getItems()as $event){
echo $event->getSummary();

我无法想象所有这些例子都是糟糕的,所以对我做错了什么有什么建议吗?

例子如下:

$calendarList = $service->calendarList->listCalendarList();
while(true){
foreach($calendarList->getItems()as $calendarListEntry){
echo $calendarListEntry->getSummary();
}
$pageToken = $calendarList->getNextPageToken();
if($pageToken){
$optParams = array('pageToken'=> $pageToken);
$calendarList = $service->calendarList->listCalendarList($optParams);
}else{
break;
}
}

感谢您的帮助

最佳答案

您需要将 $calendarList 作为对象获取,而不是像当前代码那样获取数组。

使用

$client->setUseObjects(true); 

就在

$service = new apiCalendarService($client);

解释:

$events = $cal->events->listEvents('rtparies@gmail.com');

返回一个数组。如果您不需要对象进行进一步处理,这就可以了。

既然需要对象,那么需要将对象的使用设置为true:

$client->setUseObjects(true);

现在,

$events = $cal->events->listEvents('rtparies@gmail.com');

仍然有效,唯一不同的是您现在有了一个对象,您可以将其用于此行下方的代码。

关于php - 尝试使用 PHP 从日历中获取事件列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11908420/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com