您好,登录后才能下订单哦!
这篇文章主要介绍“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进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。