為IP查詢添加GOOGLE地圖功能的代碼
更新時(shí)間:2010年08月08日 13:07:22 作者:
我曾經(jīng)做過(guò)一個(gè)IP查詢的頁(yè)面,可以比較詳細(xì)的查到國(guó)內(nèi)很多IP的所在地。前幾天我把這個(gè)頁(yè)面升級(jí)了一下,給它加了一個(gè)地圖功能,這個(gè)功能來(lái)源于google地圖開(kāi)放的api,今天我就稍微簡(jiǎn)單的講一下。
1. 在使用google api之前,我們需要先申請(qǐng)一個(gè)key,作為唯一的標(biāo)示加在url后面。
2. google地圖api里面有一個(gè)可以查詢到某個(gè)地點(diǎn)的詳細(xì)信息的地址,例如查詢北京的:http://maps.google.com/maps/geo?q=beijing
3. 我們還可以把上面的地址后面加一個(gè)參數(shù),讓它輸出我們想要的數(shù)據(jù),例如我們需要csv的數(shù)據(jù),那么地址就成了http://maps.google.com/maps/geo?q=beijing&output=csv
4. 這樣我們就得到了4個(gè)數(shù)據(jù),第一個(gè)是 http 返回地址,第二個(gè)是精確度,后面的2個(gè)是坐標(biāo),知道左邊不就可以定位到某個(gè)點(diǎn)了嘛,那我們?cè)趺磥?lái)獲取后面的數(shù)據(jù)呢?下面我來(lái)寫(xiě)一段程序。
$url = "http://maps.google.com/maps/geo?q=beijing&output=csv";
$con = file_get_contents($url);
$arr = explode(",",$con);
數(shù)據(jù)$arr里面的2和3指針就是指向的坐標(biāo)的兩個(gè)值。
5. 現(xiàn)在我們只需要來(lái)考慮怎么把查詢出來(lái)的ip的地點(diǎn)傳遞給上面的url地址就行了,還有一個(gè)讓我們高興的是google對(duì)中文的支持很強(qiáng)大,而且可以識(shí)別一串地址字符,例如:北京和北京市網(wǎng)通是一樣的,所以我們就不用做什么轉(zhuǎn)換了,直接賦值給上面的參數(shù)q就行了,然后地址后面再加上api的key。
6. 我們還可以選一下google地圖的一些樣式,讓地圖功能更強(qiáng)大一些,例如可以加衛(wèi)星地圖等。
至此,我們的地圖功能就給IP查詢功能加上了,希望我的嘗試對(duì)大家有所幫助。
2. google地圖api里面有一個(gè)可以查詢到某個(gè)地點(diǎn)的詳細(xì)信息的地址,例如查詢北京的:http://maps.google.com/maps/geo?q=beijing
3. 我們還可以把上面的地址后面加一個(gè)參數(shù),讓它輸出我們想要的數(shù)據(jù),例如我們需要csv的數(shù)據(jù),那么地址就成了http://maps.google.com/maps/geo?q=beijing&output=csv
4. 這樣我們就得到了4個(gè)數(shù)據(jù),第一個(gè)是 http 返回地址,第二個(gè)是精確度,后面的2個(gè)是坐標(biāo),知道左邊不就可以定位到某個(gè)點(diǎn)了嘛,那我們?cè)趺磥?lái)獲取后面的數(shù)據(jù)呢?下面我來(lái)寫(xiě)一段程序。
復(fù)制代碼 代碼如下:
$url = "http://maps.google.com/maps/geo?q=beijing&output=csv";
$con = file_get_contents($url);
$arr = explode(",",$con);
數(shù)據(jù)$arr里面的2和3指針就是指向的坐標(biāo)的兩個(gè)值。
5. 現(xiàn)在我們只需要來(lái)考慮怎么把查詢出來(lái)的ip的地點(diǎn)傳遞給上面的url地址就行了,還有一個(gè)讓我們高興的是google對(duì)中文的支持很強(qiáng)大,而且可以識(shí)別一串地址字符,例如:北京和北京市網(wǎng)通是一樣的,所以我們就不用做什么轉(zhuǎn)換了,直接賦值給上面的參數(shù)q就行了,然后地址后面再加上api的key。
6. 我們還可以選一下google地圖的一些樣式,讓地圖功能更強(qiáng)大一些,例如可以加衛(wèi)星地圖等。
至此,我們的地圖功能就給IP查詢功能加上了,希望我的嘗試對(duì)大家有所幫助。
您可能感興趣的文章:
- Google 地圖類型詳解及示例代碼
- Google 地圖控件集詳解及實(shí)例代碼
- Google 地圖事件實(shí)例講解
- Google 地圖疊加層實(shí)例講解
- Google 地圖獲取API Key詳細(xì)教程
- 百度地圖經(jīng)緯度轉(zhuǎn)換到騰訊地圖/Google 對(duì)應(yīng)的經(jīng)緯度
- php使用google地圖應(yīng)用實(shí)例
- Google Maps API地圖應(yīng)用示例分享
- Google 靜態(tài)地圖API實(shí)現(xiàn)代碼
- google地圖的路線實(shí)現(xiàn)代碼
- Google 地圖API資料整理及詳細(xì)介紹
相關(guān)文章
php調(diào)用Google translate_tts api實(shí)現(xiàn)代碼
以下是對(duì)php調(diào)用Google translate_tts api的實(shí)現(xiàn)代碼進(jìn)行了分析介紹,需要的朋友可以過(guò)來(lái)參考下2013-08-08golang與php實(shí)現(xiàn)計(jì)算兩個(gè)經(jīng)緯度之間距離的方法
這篇文章主要介紹了golang與php實(shí)現(xiàn)計(jì)算兩個(gè)經(jīng)緯度之間距離的方法,結(jié)合實(shí)例形式對(duì)比分析了Go語(yǔ)言與php進(jìn)行經(jīng)緯度計(jì)算的相關(guān)數(shù)學(xué)運(yùn)算技巧,需要的朋友可以參考下2016-07-07ThinkPHP中自定義目錄結(jié)構(gòu)的設(shè)置方法
現(xiàn)在很多朋友喜歡使用ThinkPHP但它會(huì)生成的很多目錄有些朋友不喜歡,這里為大家分享下將目錄都放到include目錄的方法,這樣就干凈多了2014-08-08PHP實(shí)現(xiàn)的下載遠(yuǎn)程文件類定義與用法示例
這篇文章主要介紹了PHP實(shí)現(xiàn)的下載遠(yuǎn)程文件類定義與用法,結(jié)合具體實(shí)例形式分析了php封裝的下載遠(yuǎn)程文件操作類定義及使用方法,需要的朋友可以參考下2017-07-07在php和MySql中計(jì)算時(shí)間差的方法詳解
這篇文章主要介紹了在php和MySql中計(jì)算時(shí)間差的方法詳解的相關(guān)資料,需要的朋友可以參考下2015-03-03php 判斷網(wǎng)頁(yè)是否是utf8編碼的方法
這篇文章主要介紹了php 判斷網(wǎng)頁(yè)是否是utf8編碼的方法,需要的朋友可以參考下2014-06-06Php中文件下載功能實(shí)現(xiàn)超詳細(xì)流程分析
瀏覽器發(fā)送一個(gè)請(qǐng)求,請(qǐng)求訪問(wèn)服務(wù)器中的某個(gè)網(wǎng)頁(yè)(如:down.php),該網(wǎng)頁(yè)的代碼如下2012-06-06PHP實(shí)現(xiàn)Redis分布式鎖的示例代碼
并發(fā)寫(xiě)入問(wèn)題可能導(dǎo)致數(shù)據(jù)不一致或重復(fù)寫(xiě)入,為了解決這個(gè)問(wèn)題,我們可以使用Redis實(shí)現(xiàn)分布式鎖,本文主要為大家介紹了PHP實(shí)現(xiàn)Redis分布式鎖的相關(guān)知識(shí),希望對(duì)大家有所幫助2023-12-12