我是Google API的新用户,并希望使用People API来获取用户的所有联系人。 它可以工作,我可以验证用户,我按如下方式调用People API:
$contacts = $peopleService->people_connections->listPeopleConnections('people/me');
foreach ($contacts as $contactItem) {
$this->print_r2($contactItem);
}
但我获得了一个类型为Google_Service_People_ListConnectionsResponse:
的对象Google_Service_People_ListConnectionsResponse Object
(
[collection_key:protected] => connections
[internal_gapi_mappings:protected] => Array
(
)
[connectionsType:protected] => Google_Service_People_Person
[connectionsDataType:protected] => array
[nextPageToken] =>
[nextSyncToken] => CPDp4aW_KhIBMRjuEioECAAQAQ
[modelData:protected] => Array
(
[connections] => Array
(
[0] => Array
(
[resourceName] => people/c3422388075840417635
[etag] => AgD+4rTZF6o=
[metadata] => Array
(
[sources] => Array
(
[0] => Array
(
[type] => CONTACT
[id] => 2fc3d288898002f63
[etag] => #AgD+4rTZF6o=
)
)
[deleted] => 1
[objectType] => PERSON
)
)
[1] => Array
(
[resourceName] => people/107483842333347794768
[etag] => btQbbIVcGJ4=
[metadata] => Array
(
[sources] => Array
(
[0] => Array
(
[type] => CONTACT
[id] => 715e58866e51e374
[etag] => #TW+s5999ANk=
)
[1] => Array
(
[type] => PROFILE
[id] => 107483842299147794768
)
)
[objectType] => PERSON
)
[names] => Array
(
[0] => Array
(
[metadata] => Array
(
[primary] => 1
[source] => Array
(
[type] => CONTACT
[id] => 715e50000e51e374
)
)
[displayName] => xxxxxxxx
[familyName] => xxxxxx
[givenName] => xxxxxxxxx
[displayNameLastFirst] => xxxxx, xxxxx
)
[1] => Array
(
[metadata] => Array
(
[source] => Array
(
[type] => PROFILE
[id] => *************************
)
)
[displayName] => xxxxxxxxxx
[familyName] => xxxxx
[givenName] => xxxxxxx
[displayNameLastFirst] => xxxxx, xxxxxxx
)
)
...... .......
我的问题有点愚蠢:如何使用PHP客户端库读取[modelData:protected]数组,以便得到[连接]。
答案 0 :(得分:0)
我遇到了与您相同的问题,因为repo明确声明使用v1分支,因此Google开发者网站上的文档似乎不正确。
到目前为止,这是我一直在攻击的内容,这是错误的代码,但希望它会对你有所帮助:
$connections = $service->people_connections->listPeopleConnections('people/me', array(
'pageSize' => 500,
'requestMask.includeField' => 'person.names,person.phoneNumbers'
));
foreach($connections->connections as $contact){
echo("{$contact[names][0][displayName]}<br/>");
}