无法通过php curl获得谷歌地图的响应

时间:2014-05-30 14:27:20

标签: php google-maps curl

您好我正在尝试通过php curl获得反向地理编码谷歌地图api的响应。 我的代码是

$url="https://maps.googleapis.com/maps/api/geocode/json?latlng=22.999,72.582&sensor=false&key=myAPIKey";
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $response1 = curl_exec($ch);
    print_r($response1);
    exit;

我一无所获。

2 个答案:

答案 0 :(得分:0)

<?php
    $url="https://maps.googleapis.com/maps/api/geocode/json?latlng=22.999,72.582&sensor=false&key=myApiKey";
    $timeout = 60;
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,  2);
    $data = curl_exec($ch);
    curl_close($ch);
    echo $data;
?>

由于您尝试通过https进行连接,因此您需要告诉curl您尝试通过https进行连接:P

答案 1 :(得分:0)

在我的情况下,逃避'&amp;' $ url变量中带有&amp;的字符解决了这个问题。