在 php google 中获取 <gd:name> 而不是 <title> 联系 api
Getting <gd:name> instead of <title> in php google contact api
我尝试了不同的方法来获取 familyName 或 givenName 等数据的结构化数据...但我失败了。
例如我尝试修改这段代码rapidwebltd/php-google-contacts-v3-api
这是一个示例:
$contactGDNodes=$xmlContactsEntry->children('http://schemas.google.com/g/2005');
foreach ($contactGDNodes as $key=> $value) {
switch ($key) {
case 'organization':
$contactDetails[$key]['orgName']=(string) $value->orgName;
$contactDetails[$key]['orgTitle']=(string) $value->orgTitle;
break;
/* case 'name':
$contactDetails['sName']['familyName'] = (string) $value->familyName;
$contactDetails['sName']['givenName'] = (string) $value->givenName;
$contactDetails['sName']['fullName'] = (string) $value->fullName;
break;
case 'structuredPostalAddress':
$contactDetails[$key]['city'] = (string) $value->city;
break; */
case 'email':
$attributes=$value->attributes();
$emailadress=(string) $attributes['address'];
$emailtype=substr(strstr($attributes['rel'], '#'), 1);
$contactDetails[$key][$emailtype]=$emailadress;
break;
'organization' 或 'email' 的数据完美运行。注释中是我添加的代码 "unseless" 因为数据不可用。实际上,使用 var_dump 的 $contactGDNodes,我清楚地看到我正在寻找的数据不存在......你知道我错过了什么吗?
非常感谢
快速浏览一下您正在使用的 "v3" 库表明它实际上正在将请求发送到 API 的版本 1,而不是版本 3。将 v=3 添加到 URL 参数列表以调用包含名称的正确版本。如果原始 XML 响应中没有姓名,则联系人本身没有姓名。
对于同样问题感兴趣的人,?v=3 必须这样实现:
$req = new \Google_Http_Request('https://www.google.com/m8/feeds/contacts/default/full?v=3&max-results=10000&updated-min=2007-03-16T00:00:00');
我尝试了不同的方法来获取 familyName 或 givenName 等数据的结构化数据...但我失败了。
例如我尝试修改这段代码rapidwebltd/php-google-contacts-v3-api
这是一个示例:
$contactGDNodes=$xmlContactsEntry->children('http://schemas.google.com/g/2005');
foreach ($contactGDNodes as $key=> $value) {
switch ($key) {
case 'organization':
$contactDetails[$key]['orgName']=(string) $value->orgName;
$contactDetails[$key]['orgTitle']=(string) $value->orgTitle;
break;
/* case 'name':
$contactDetails['sName']['familyName'] = (string) $value->familyName;
$contactDetails['sName']['givenName'] = (string) $value->givenName;
$contactDetails['sName']['fullName'] = (string) $value->fullName;
break;
case 'structuredPostalAddress':
$contactDetails[$key]['city'] = (string) $value->city;
break; */
case 'email':
$attributes=$value->attributes();
$emailadress=(string) $attributes['address'];
$emailtype=substr(strstr($attributes['rel'], '#'), 1);
$contactDetails[$key][$emailtype]=$emailadress;
break;
'organization' 或 'email' 的数据完美运行。注释中是我添加的代码 "unseless" 因为数据不可用。实际上,使用 var_dump 的 $contactGDNodes,我清楚地看到我正在寻找的数据不存在......你知道我错过了什么吗?
非常感谢
快速浏览一下您正在使用的 "v3" 库表明它实际上正在将请求发送到 API 的版本 1,而不是版本 3。将 v=3 添加到 URL 参数列表以调用包含名称的正确版本。如果原始 XML 响应中没有姓名,则联系人本身没有姓名。
对于同样问题感兴趣的人,?v=3 必须这样实现:
$req = new \Google_Http_Request('https://www.google.com/m8/feeds/contacts/default/full?v=3&max-results=10000&updated-min=2007-03-16T00:00:00');