2015-05-13 74 views
-1
function getlatlang($location,$region) 
{ 
    $geocode = file_get_contents('http://maps.google.com/maps/api/geocode/json?address='. urlencode($location) .'&sensor=false$region='. urlencode($region)); 

    $output= json_decode($geocode); 

    return $output->results[0]->geometry->location; 
} 

工作,這是我一直使用的是什麼,而一個本地服務器上開發,我現在所做的網站通過我的虛擬主機提供商住,這不再返回的位置。谷歌地圖API不直播現場

不知道可能會出現什麼問題?

+0

是'file_get_contents'返回什麼? –

+0

也key = API_KEY丟失,但你可能會刪除它演示 –

+0

@Dagon我沒有任何鍵設置,我唯一需要的東西是谷歌+訪問令牌。上述代碼在將文件上傳到虛擬主機之前工作良好。 – Danny123

回答

0
function getlatlang($location,$region) 
{ 
    //$geocode = file_get_contents('http://maps.google.com/maps/api/geocode/json?address='. urlencode($location) .'&sensor=false&region='. urlencode($region)); 

    $url = 'http://maps.google.com/maps/api/geocode/json?address='. urlencode($location) .'&sensor=false&region='. urlencode($region); 
    $ch = curl_init(); 
    curl_setopt ($ch, CURLOPT_URL, $url); 
    curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, 5); 
    curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true); 
    $geocode = curl_exec($ch); 
    if (curl_errno($ch)) { 
     echo curl_error($ch); 
     echo "\n<br />"; 
     $contents = ''; 
    } else { 
     curl_close($ch); 
    } 

    $output= json_decode($geocode); 

    return $output->results[0]->geometry->location; 
} 

我的虛擬主機不允許fopen切換到curl()。