2012-08-08 79 views
4

這是我在這個網站上的第一篇文章,所以請原諒我,如果我屠殺它,但我會盡量做出一個清晰而直截了當的轉發。谷歌聯繫人的API名稱和電子郵件

我正嘗試使用Google Contacts API從已驗證的用戶gmail帳戶導入名稱和電子郵件地址。我使用Google自己提供的通用代碼來獲取電子郵件地址。我試圖修改它來抓取聯繫人的名字也無濟於事。任何幫助將不勝感激。以下是我目前使用的代碼。

$xml = new SimpleXMLElement($val->getResponseBody()); 

$xml->registerXPathNamespace('gd', 'http://schemas.google.com/g/2005'); 
$result = $xml->xpath('//gd:email'); 

$name_result = $xml->xpath('//title'); 

foreach ($result as $title) { 
    echo "<div>".$title->attributes()->address."</div>"; 
} 

foreach ($name_result as $name) { 
     echo "<div class='contact_alt'>".$name."</div>"; 
} 
+0

[PHP的GMAIL聯繫人XML解析與DOMDocument和cURL]的可能重複(http://stackoverflow.com/questions/6530050/php-gmail-contacts-xml-parsing-with-domdocument-and-curl) – yoda 2013-01-07 17:50:03

回答

1

另一種解決方案我用的是要求谷歌API和JSON回覆,而不是XML。用gd:namespaces解析XML會變得棘手。 JSON會返回聯繫人姓名和電子郵件,它將成爲使用json_decode()的問題。

$url = 'https://www.google.com/m8/feeds/contacts/%s/full' 
$url .= '&access_token=%s' 
$url .= &alt=json; 

只需添加&alt=json請求URL。