2016-06-11 18 views
0

wenn Benutzer erlauben Erlaubnis & Skript starten jede Datenverarbeitung perfekt dargestellt ist, aber ich bekomme FehlerWährend Kontakte von Google unerwartetem undefiniert Index Abrufen

PHP Notice: Undefined index: gd $ email in

hier ist mein pHP-Code

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 
} 

Dies ist nur Beispiel für die Hälfte Skript & ich weiß nicht, warum das Holen von Kontakten von Google dauert ungefähr 15 bis 20 Sekunden jedes Mal, wenn ich diese Seite besuche

+1

ohne etwas genauer, um die von Googles api Ihre Berufung, es wird schwer sein, an der Antwort zu erraten, ich sehe ‚gd $ email‘ und ich denke, Google verwendet "gd: email" mit einem Doppelpunkt anstelle von $. Wenn Sie versuchen, eine Variable in die Zeichenfolge zu schreiben, müssen Sie doppelte Anführungszeichen verwenden, damit die Variable analysiert wird. –

Antwort

0

Google überprüft nicht, dass alle Einträge E-Mail-Adresse haben.

hinzufügen, die sofort nach Foreach:

if (!array_key_exists('gd$email', $contact)){ 
    continue; 
}