从谷歌意外未定义索引中获取联系人时
Posted
技术标签:
【中文标题】从谷歌意外未定义索引中获取联系人时【英文标题】:While fetching contacts from google unexpected undefined index 【发布时间】:2016-06-11 13:27:26 【问题描述】:当用户允许权限和脚本开始处理时,每个数据都完美显示,但我得到错误
php 通知:未定义索引:gd$email in
这是我的 php 代码
if (!empty($contacts['feed']['entry']))
foreach($contacts['feed']['entry'] as $contact)
// retrieve user photo
if (isset($contact['link'][0]['href']))
$url = $contact['link'][0]['href'];
$url = $url . '&access_token=' . urlencode($accesstoken);
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_TIMEOUT, 15);
curl_setopt($curl, CURLOPT_VERBOSE, true);
$image = curl_exec($curl);
curl_close($curl);
if ($image === 'Photo not found')
// retrieve Name and email address
$return[] = array(
'name' => $contact['title']['$t'],
'email' => $contact['gd$email'][0]['address'],
'img_url' => '//cdn.twkcdn.com/profile/image/avatar.png?w=40&h=40&cf',
);
else
// retrieve Name and email address
$return[] = array(
'name' => $contact['title']['$t'],
'email' => $contact['gd$email'][0]['address'],
'img_url' => $url,
);
$google_contacts = $return; //returning all d
这只是半脚本的示例,我不知道为什么每次访问此页面时从谷歌获取联系人大约需要 15 到 20 秒
【问题讨论】:
没有更多关于您调用哪个 google api 的详细信息,很难猜测响应,我看到 'gd$email',我认为 google 使用“gd:email”冒号而不是 $。如果您尝试将变量放入字符串中,则需要使用双引号,以便解析变量。 【参考方案1】:Google 不会检查所有条目是否都有电子邮件地址。
在 Foreach 之后立即添加:
if (!array_key_exists('gd$email', $contact))
continue;
【讨论】:
以上是关于从谷歌意外未定义索引中获取联系人时的主要内容,如果未能解决你的问题,请参考以下文章
Android 获取联系人列表未在 Android 10 中显示