PHP:利用php cURL來獲取騰訊地圖的相關資料
利用php cURL來獲取騰訊地圖的相關資料
【前言】
在開發過程中,經常會用到地圖、定位、城市列表等相關的資料,這時候我們就需要呼叫騰訊地圖相應的介面來獲取這些資料。今天就說一下如何利用php的cURL函式來獲取這些資料。採用三個簡單的例子來說明:
1、獲取中國省市、城市列表
2、根據經緯度獲取該地點的相關資訊
3、根據詳細位置獲取該地點的經緯度
【php cURL】
cURL是一個利用URL語法規定來傳輸檔案和資料的工具,支援很多工具和協議。PHP 支援 Daniel Stenberg 建立的 libcurl 庫,能夠連線通訊各種伺服器、使用各種協議。libcurl 目前支援的協議有 http、https、ftp、gopher、telnet、dict、file、ldap。 libcurl 同時支援 HTTPS 證書、HTTP POST、HTTP PUT、 FTP 上傳(也能通過 PHP 的 FTP 擴充套件完成)、HTTP 基於表單的上傳、代理、cookies、使用者名稱+密碼的認證。
使用php cURL函式的基本思想:
1、先使用curl_init()初始化cURL會話,
2、接著通過curl_setopt()設定需要的全部選項
3、使用curl_exec()來執行會話
4、當執行完會話後使用curl_close()關閉會話。
簡單例子:
<?php
$ch = curl_init("http://www.example.com/");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
?>
【騰訊地圖API】
騰訊地圖Webservice API是基於HTTP協議的資料介面,開發者可以使用任何客戶端、伺服器和開發語言,按照騰訊地圖Webservice API規範,按需構建HTTP請求,並獲取結果資料。
前提:獲取騰訊地圖的相應資料之前,需要先去騰訊地圖API申請一個開發者金鑰。
具體資訊可以參考騰訊地圖API:騰訊地圖API
【程式碼實現(例子)】
1、獲取中國省市、城市列表:
*注:以下程式碼中出現的一些引數(例如result、name),需要參考騰訊地圖API呼叫相應介面之後的響應結果。
<?php
//初始化cURL會話
$ch = curl_init();
//設定需要的選項
curl_setopt($ch, CURLOPT_URL, "http://apis.map.qq.com/ws/district/v1/list?key=金鑰");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 ); //將curl_exec()獲取的資訊以字串返回,而不是直接輸出
$data = curl_exec($ch);
$map = json_decode($data);
$arr = $map->result;
//輸出中國省市列表
for ($i = 0; $i < 34; $i++) {
echo $arr[0][$i]->name." ";
}
echo "<br/><br/>";
//輸出中國城市列表
for ($i = 0; $i < 493; $i++) {
echo $arr[1][$i]->name." ";
}
//echo json_encode($res, JSON_UNESCAPED_UNICODE);
curl_close($ch);
?>
2、根據經緯度獲取該地點的相關資訊:
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://apis.map.qq.com/ws/geocoder/v1/?location=39.984154,116.307490&key=金鑰");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data = curl_exec($ch);
$map = json_decode($data);
$res = $map->result;
echo $res->address."<br/>";
$ad_info = $res->ad_info;
echo $ad_info->nation."<br/>";
echo $ad_info->province."<br/>";
echo $ad_info->district."<br/>";
?>
3、根據詳細位置獲取該地點的經緯度:
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://apis.map.qq.com/ws/geocoder/v1/?address=湖南省張家界市永定區天門山鎮&key=金鑰");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data = curl_exec($ch);
$map = json_decode($data);
$location = $map->result->location;
echo "經度:".$location->lng."<br/>";
echo "緯度:".$location->lat."<br/>";
?>
*注:如何任何錯誤或者疑問歡迎指出
相關推薦
PHP:利用php cURL來獲取騰訊地圖的相關資料
利用php cURL來獲取騰訊地圖的相關資料 【前言】 在開發過程中,經常會用到地圖、定位、城市列表等相關的資料,這時候我們就需要呼叫騰訊地圖相應的介面來獲取這些資料。今天就說一下如何利用php的cURL函式來獲取這些資料。採用三個簡單的例子來說明:
php利用simple_html_dom類,獲取頁面內容,充當爬蟲角色
contents names mac tro upd tool one mit 一個 PHP腳本扮演爬蟲的角色,可能大家第一時間想到可能會是會正則,個人對正則的規則老是記不住,表示比較難下手,今天工作中有個需求需要爬取某個網站上的一些門店信息 無意間在網上看到一個比較好的
php中使用curl來post一段json數據
問題 mozilla gecko 處理 行數 agent body nts 本地 場景:在調用第三方接口時經常需要使用到curl進行數據交互,在初次使用時遇到一些小問題,記錄下來隨時查閱。 封裝curl相關方法便於使用,方法如下: /** * @param $url
php 百度地圖 騰訊地圖 轉換坐標
() gcj02 OS bsp double -- php 地圖 code /** * 中國正常GCJ02坐標---->百度地圖BD09坐標 * 騰訊地圖用的也是GCJ02坐標 * @param double $lat 緯度 * @param
騰訊地圖和百度地圖的PHP相互轉換
/** * 百度地圖---->騰訊地圖 * @param double $lat 緯度 * @param double $lng 經度 * @return array(); */ function Convert_BD09_To_GCJ02($lat,$lng){ $x_pi =
Ubuntu利用TCP協議來獲取server時間
intro term apt 簡單 p s iss stdout tcp tcp連接 Linux利用TCP協議來獲取server時間 這裏使用Unix網絡編程裏面的一個小程序,該client建立一個到server的TCP連接,然後讀取由server以直觀
微信小程序獲取騰訊經緯度,得到具體地址
add 坐標 api res url 經緯度 git 轉換成 log getCityNameOFLocation: function() { var that = this; wx.getLocation({ type: ‘wgs84‘, //
AI+遊戲:高效利用樣本的強化學習 | 騰訊AI Lab學術論壇演講
騰訊 AI 人工智能 3月15日,騰訊AI Lab第二屆學術論壇在深圳舉行,聚焦人工智能在醫療、遊戲、多媒體內容、人機交互等四大領域的跨界研究與應用。全球30位頂級AI專家出席,對多項前沿研究成果進行了深入探討與交流。騰訊AI Lab還宣布了2018三大核心戰略,以及同頂級研究與出版機構自然科研的
微信小程序 - 輸入起點、終點獲取距離並且進行路線規劃(騰訊地圖)
img -c con XML family maps option space com index.wxml <!--地圖容器--> <map id="myMap" style="width: 100%; height: 300px;"
騰訊地圖H5位置獲取
騰訊地圖H5位置獲取 直接ctrl+c 就行了 直接開啟 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/htm
如何利用C語言來獲取當地時間和UTC時間 (設當地時間是北京時間)
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
騰訊地圖逆地址解析,通過經緯度獲取詳細的資訊資料
根據騰訊地圖API,以圖文的方式一步一步的來說明如何獲取詳細的位置資訊資料。具體參考騰訊地圖Webservice API的簡介。騰訊地圖WebService API 第一步:申請開發者金鑰(key)申請金鑰 我選擇的應用型別為瀏覽器型別(呼叫Javascr
Linux環境下伺服器利用組播來獲取客戶端IP
單播是兩個主機之間端對端通訊(比如TCP、UDP通訊),而廣播用於一個主機對整個區域網中所有主機的通訊。單播和廣播是兩個極端,要麼對一個主機通訊,要麼對區域網內所有主機通訊。然而在實際情況下,比如要獲取區域網內獲取執行特殊任務主機IP,單播顯然不適用,因為單播必須首先要知道通
python 通過騰訊地圖API獲取全國關鍵詞(樓盤/商場)位置資訊
到騰訊地圖API官網https://lbs.qq.com/index.html 申請一張賬號,申請開發者金鑰(Key):申請金鑰。 以下為搜尋全國萬達的地理位置資訊 #!coding=utf-8 import requests import re import rand
騰訊位置大資料(當日定位次數)F12獲取
作者微訊號,w912917507,歡迎交流學習 獲取方法非常 簡單,開啟頁面https://heat.qq.com/ F12後重新整理頁面,點選Network——XHR 找到叫getXingyunPoints的那一行,點一下,點Preview 資料已
Petya勒索病毒來襲 騰訊雲釋出安全指引
6月27日,一種名為“Petya”的新型勒索病毒席捲了歐洲,烏克蘭等國家,多家銀行和公司,包括政府大樓的電腦都出現問題。 同時,在27號18點左右,騰訊雲聯合騰訊電腦管家發現相關樣本在國內出現,騰訊雲已實時啟動使用者防護引導,到目前為止,雲上使用者尚無感染案例,但建議沒打補丁使用者儘快打補丁避免感染
微信小程式詳細圖文教程-10分鐘完成微信小程式開發部署釋出(3元獲取騰訊雲伺服器帶小程式支援系統)
1、【高頻使用】 美團外賣 滴滴公交查詢 車來了 大眾點評+ 京東購物 摩拜單車 滴滴出行DiDi 攜程酒店機票火車票 2、【旅行】 驢媽媽門票預訂 飛常準查航班 海南航空微應用 南航e行 去哪兒出行 朋友家精選
如何利用C語言來獲取當地時間和UTC時間? (設當地時間是北京時間)
#include <stdio.h> #include <time.h> int main() { time_t t = time(NULL); tm *t
利用觀察者模式來獲取執行緒中的資料或者回調函式
首先//抽象主題角色,watched:被觀察 public interface Watched { public void addWatcher(Watcher watcher); public void removeWatcher(Watcher wat
golang 利用閉包來獲取一段程式的執行效率時間,很簡單但是很經典
... func main(){ duration:=GetDuration(func(){ //do sth resp, err2 = client.Do(req)