从谷歌获取纬度 - 经度

时间:2012-06-27 07:34:53

标签: google-maps latitude-longitude coords

我的这个功能有问题

public function getCoords($address){
    $coordinatesSplit=array(0=>0,1=>0);
    $request_url = $this->_baseUrl . "&oe=utf-8&q=" . urlencode($address);
        $xml = simplexml_load_file($request_url);      
        if (! empty($xml->Response)) {
            $point= $xml->Response->Placemark->Point;

                $coordinatesSplit = explode(",", $point->coordinates);
                // Format: Longitude, Latitude, Altitude

            }  
         $this->latitude = $coordinatesSplit[1];
         $this->longitude= $coordinatesSplit[0];   
}

运行良好,但如果我把它放入地址循环中,有时会跳过一个地址(完全随机)。 如果我开始循环两次有时会跳过结果,有时会跳过另一个......我相信它是由超时引起的。 我可以等到这个功能准备好了吗?

感谢您的建议

1 个答案:

答案 0 :(得分:1)

再次尝试睡眠(5),似乎没问题。 我用Google搜索,发现每秒可以进行20次查询。我添加了usleep(500000),现在它完美无缺

谢谢Alfasin!