文章出處

  因為連接百度地圖的API,然后通過經緯度得到位置信息,可是得到的位置信息是通過將經緯度嵌在url里面,生成xml文件后,因為是在線的,當時就想到在不下載的情況下獲取里面的數據,因為使用代碼下載是可以下載,但是下載到具體的路徑總是失敗,先放上失敗的代碼,有人看到的話,也許能提個醒,或者有更好的辦法。

 1 <?php
 2 define($filePath,'D:\\phpStudy\\WWW\\children\\gprs\\');
 3 $filename = 'http://api.map.baidu.com/geocoder?location=30.990998,103.645966&output=xml&key=28bcdd84fae25699606ffad27f8da77b';
 4 //文件的類型
 5 header('Content-type: text/xml');
 6 //下載顯示的名字
 7 header("Content-Disposition: attachment; filename={$filePath}.map.xml");
 8 //readfile("$filename");
 9 $content=file_get_contents(map.xml);
10 var_dump($content);

這時不能夠var_dump出里面的數據,只是在打開該連接的時候就自動下載到瀏覽器默認下載的地方,我在開頭設置的文件路徑完全就用不了,文件還是下載到瀏覽器默認下載的文件夾里。

  后來在網上看到,就是直接獲取該url中的數據,不用下載下來,果然是方便多了啊。

1 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
2 <?php
3 $content = file_get_contents('http://api.map.baidu.com/geocoder?location=30.990998,103.645966&output=json&key=28bcdd84fae25699606ffad27f8da77b');
4 $json = json_decode($content,true);
5 var_dump($json);
6 $address=$json['result']['formatted_address'];
7 echo '<br><br><br><br>';
8 echo $address;

第一行的meta如果不加上的話就會亂碼,現在根據該鏈接就能獲取到經緯度定位的具體位置了。

如果該數組顯示不直觀,可以直接點擊查看源代碼,然后根據key獲取所需要的位置信息。


文章列表




Avast logo

Avast 防毒軟體已檢查此封電子郵件的病毒。
www.avast.com


arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()