有人可以帮我解决这个问题吗? 我需要从地址知道php纬度和经度。
我在做:
$ address = urlencode('我的地址');
$ lat_lng = 使用simplexml_load_file( “http://maps.google.com/maps/api/geocode/xml?address= {$地址}&安培;传感器=假”);
但是我收到了这个警告:
消息:simplexml_load_file() [function.simplexml负荷文件]: php_network_getaddresses:getaddrinfo 失败:名称暂时失败 分辨率
我想我需要配置代理,所以我改变了这个方式:
$ address = urlencode('我的地址');
$ ch = curl_init( “http://maps.google.com/maps/api/geocode/xml?address= {$地址}&安培;传感器=假”);
curl_setopt($ CH, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ ch,CURLOPT_PROXY, “my_proxy);
curl_setopt($ ch,CURLOPT_PROXYPORT, '我的+端口');
$ lat_lng = simplexml_load_string(curl_exec($ CH));
curl_close($ CH);
当我拨打curl_exec
时似乎被阻止了。
答案 0 :(得分:1)
首先尝试使用无代理设置,但代理配置可能出错。
function curl($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_close ($ch);
return curl_exec($ch);
}
$address = urlencode($address);
$data = curl("http://maps.google.com/maps/api/geocode/xml?address=$address&sensor=false");
$lat_lng = simplexml_load_string($data);
答案 1 :(得分:0)
检查您的代码
curl_close ($ch);
应该是函数内的最后一行