我正在尝试使用带有php的Zend GData Framework将where属性从事件中拉出来。有没有人知道获取该属性的正确格式?
$eventFeed = $gdataCal->getCalendarEventFeed($query);
foreach ($eventFeed as $event) {
$start = $event->when[0]->startTime;
$end = $event->when[0]->endTime;
$where = $event->where[0]->valueString; //--this guy is the problem
$title = $event->title->text;
$id = $event->id;
$content = $event->content->text;
}
答案 0 :(得分:0)
您已拥有正确的格式:
$where = $event->where[0]->valueString;
这对我来说很有效。
答案 1 :(得分:0)
如上所述,只要是数组中的第一项,就可以使用where参数的正确的语法。在你的代码中,你并没有真正展示你在使用代码做什么,我的意思是你循环遍历事件,设置变量,然后移动到下一个项目,然后将变量写入下一个事件,而不做任何事情上一个事件(对不起,如果您为此示例缩减了代码)。
因此,您可以使用print_r
将数组打印到屏幕上并查看其中的内容,但如果您不习惯查看zend数组,则不会非常清楚:
另一件事是循环遍历where数组并打印你想要看到的位,看看该事件的项目是否有多个:
$eventFeed = $gdataCal->getCalendarEventFeed($query);
foreach ($eventFeed as $event)
{
$start = $event->when[0]->startTime;
$end = $event->when[0]->endTime;
// test 1: see whats in the array:
print_r($event->where[0]);
// test 2: loop through the where array and see what you get:
foreach ($event->where as $val)
{
$where = $val->valueString;
echo $where.'<br />';
}
$title = $event->title->text;
$id = $event->id;
$content = $event->content->text;
}