2017-05-03 2 views
-1

Je passe quelques coordonnées à mon foreach à un géocodage inverse. Je n'ai qu'une seule coordonnée mais pas toutes. Je pense que c'est un problème de retard. Voici mon code:Mon foreach ne fera pas un appel pour toutes les coordonnées que je passe

foreach ($coordPointsArray as $coordPointArray) { 
    $latLangCoords = implode(",", $coordPointArray); 
    echo($latLangCoords); 
    $callToGoogleGeocode = curl_init(); 
    $urlGeocode = 'https://maps.googleapis.com/maps/api/geocode/json?latlng='. urlencode($latLangCoords). '&key=' . $googleApiKey; 
    curl_setopt_array($callToGoogleGeocode, [ 
     CURLOPT_URL   => $urlGeocode, 
     CURLOPT_RETURNTRANSFER => true, 
     CURLOPT_ENCODING  => "", 
     CURLOPT_MAXREDIRS  => 10, 
     CURLOPT_TIMEOUT  => 30, 
     CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, 
     CURLOPT_CUSTOMREQUEST => "GET", 
     CURLOPT_HTTPHEADER  => [ 
      "cache-control: no-cache" 
     ], 
    ]); 
    $rawResponseGeocode = curl_exec($callToGoogleGeocode); 
} 
return($rawResponseGeocode); 

est ici la réponse d'écho:

45.4807897,9.21359845.4801858,9.214740945.4801858,9.214740945.4763715,9.21103245.4763715,9.21103245.4748449,9.211080445.4748449,9.211080445.4685044,9.211260645.4685044,9.211260645.4673681,9.211252645.4673681,9.211252645.4621453,9.211394845.4621453,9.211394845.4621861,9.20949345.4621861,9.20949345.4604364,9.2092372 
+0

Qu'attendez-vous qu'il retourne? La dernière ligne de la boucle foreach écrase la variable à chaque fois afin que vous retourniez la dernière valeur. – JJJ

+0

comment puis-je le réparer? – McMazalf

+1

Encore une fois, que voulez-vous que la fonction retourne? Si vous voulez un tableau de coordonnées, faites un tableau et retournez-le. – JJJ

Répondre

0

Je l'ai fait une erreur. J'écrivais la variable à la fin. J'avais besoin de stocker mes réponses dans un tableau avec push de tableau.