您好,登錄后才能下訂單哦!
這篇文章主要介紹“php如何實現定位功能”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“php如何實現定位功能”文章能幫助大家解決問題。
php實現定位功能的方法:1、注冊成為百度用戶,成為地圖開放平臺開發者;2、獲取服務密鑰;3、通過百度地圖API接口獲取經緯度;4、通過API接口定位到具體位置即可。
php實現IP定位
注冊成為百度用戶,成為地圖開放平臺開發者,獲取服務密鑰。通過百度地圖API接口獲取經緯度,進而通過API接口進行全球逆地理編碼服務,簡單說就是通過經緯度再次定位到具體位置。
代碼為:
<!DOCTYPE html> <html> <head> <title>IP定位具體位置</title> </head> <body> <form action="" method="POST"> 請輸入公網IP:<input type="text" name="ip"> <input type="submit" name="submit" > </form> </body> </html> <?php header("Content-Type:text/html;charset=utf-8;"); $ip=@$_POST['ip']; //正則匹配IP if (preg_match('/^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:[.](?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$/',$ip)){ $url_ip="http://api.map.baidu.com/location/ip?ip=$ip&ak=您的ak&coor=bd09ll"; //注冊后得到的服務密鑰ak $str=file_get_contents($url_ip); $arr=json_decode($str,true); if ($arr["status"]==0){ $x=$arr['content']['point']['x']; $y=$arr['content']['point']['y']; $url="http://api.map.baidu.com/geocoder/v2/?callback=renderReverse&location=$y,$x&output=json&pois=1&ak=您的ak"; //注意y代表緯度,x代表精度 $str=file_get_contents($url); //var_dump($str); //以下自由發揮 preg_match("/{.+}/", $str, $result); $arr=json_decode($result[0],true); $num=count($arr["result"]["pois"]); for ($i=0; $i < $num; $i++) { echo '<font color="#ff0000">'.$ip."-----".$arr["result"]["pois"][$i]["addr"]."<br/>"; } }else{ echo "<h3>not find IP</h3>"; } }else{ echo "<h3>not really IP</h3>"; } ?>
注意替換ak
附加一圖:
php,一個嵌套的縮寫名稱,是英文超級文本預處理語言(PHP:Hypertext Preprocessor)的縮寫。PHP 是一種 HTML 內嵌式的語言,PHP與微軟的ASP頗有幾分相似,都是一種在服務器端執行的嵌入HTML文檔的腳本語言,語言的風格有類似于C語言,現在被很多的網站編程人員廣泛的運用。
關于“php如何實現定位功能”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。