PHP API客户端,PodioItem::filter()不会返回所有结果


PHP API Client, PodioItem::filter() does not return all results

我开始学习PHP客户端库,并从上的"Hello World"示例开始http://podio.github.io/podio-php/.我的基本脚本正在运行,并且确实返回了一个结果(我已经设置了客户端id/secret和应用程序id/token)。当我回显count(PodioItem::filter($app_id));的结果时,只返回了20个项目,但实际上应用程序中有110个项目。

我的问题是我做错了什么?我遗漏了什么

这似乎是一个非常基本的例子。我在谷歌和StackOverflow上做了一些搜索,没有发现任何人有这个问题。

我的脚本经过身份验证并返回结果,但不是所有结果。使用数组('limit'=>xx)选项,我可以得到多达50个。我的应用程序有110个项目。

此外,如果我这样做:print_r(PodioItem::filter($appid));,输出确实报告"[total]=>110",但数组转储只有20个项目。

我的php内存限制设置为512MB。并且print_r(error_get_last());为空(错误报告打开)。

PodioItem::filter()默认情况下只返回20个项目。您可以在https://developers.podio.com/doc/items/filter-items-4496747

正如您所看到的,您需要传递一个limit参数来获得更多项目。要获得100个项目:

$items = PodioItem::filter($app_id, array('limit' => 100));

通过这种方式,您最多可以获得500件商品。如果您需要更多的项目,则必须使用多个请求和offset参数跳过已有的项目。

total属性将始终为您提供应用程序中的项目总数,无论您当前在本地收藏中有多少项目。以类似的方式,filtered将始终为您提供当前筛选视图中的项目总数,而不管您的本地集合中有多少项目。如果您正在构建(例如分页),则此信息非常重要。

(代码行缺少右括号。〔fixed〕)