Php 无法解决主机的maps.googleapis.com问题google反向地理编码中随机出现的问题

Php 无法解决主机的maps.googleapis.com问题google反向地理编码中随机出现的问题,php,google-maps,google-api,Php,Google Maps,Google Api,我尝试了使用PHP进行谷歌反向地理编码。如果我第一次运行PHP,它会完美地返回格式化的地址,那么我再次重新加载PHP意味着它返回Curl错误:无法解析主机“maps.googleapis.com” 如果我再次运行PHP,它返回的地址正确…这意味着它是随机工作的 我搜索这个错误,都说是DNS问题,所以联系DNS提供商…但他们说他们这边没有问题 我在60秒以内的两次查询之间尝试了time delaysleep函数。但这也不起作用。同样的错误发生在60秒延迟之后 我的PHP代码: 我的编码有问题吗……

我尝试了使用PHP进行谷歌反向地理编码。如果我第一次运行PHP,它会完美地返回格式化的地址,那么我再次重新加载PHP意味着它返回Curl错误:无法解析主机“maps.googleapis.com”

如果我再次运行PHP,它返回的地址正确…这意味着它是随机工作的

我搜索这个错误,都说是DNS问题,所以联系DNS提供商…但他们说他们这边没有问题

我在60秒以内的两次查询之间尝试了time delaysleep函数。但这也不起作用。同样的错误发生在60秒延迟之后

我的PHP代码:


我的编码有问题吗……请帮我解决这个问题……

您可以将maps.googleapis.com添加到服务器的主机文件中,或者,如果您没有访问权限,请连接到地址解析到的IP地址。另一种方法是缓存maps.googleapis.com解析到的IP地址,然后在使用FQDN超时时使用缓存的IP地址进行连接

<?php
    //sleep(60);
    $url='http://maps.googleapis.com/maps/api/geocode/json?latlng=11.49731013,77.24445245&sensor=false';
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,  2);
    curl_setopt($ch, CURLOPT_REFERER, 'http://www.mysite.com/dns.php');
    $body = curl_exec($ch);

    if($body=== false) {
        echo "<br>";
        echo 'Curl error: ' . curl_error($ch);
        echo "<br>";
        }
        else
        {
        $json = json_decode($body);
        $addr2=$json->results[0]->formatted_address;
        echo "<br>";
        echo $addr2;
        echo "<br>";
        }
?>