PHP根据IP获取当前经纬度以及地域信息的方法是什么?
导读:这篇文章给大家分享的是“PHP根据IP获取当前经纬度以及地域信息的方法是什么?”,文中的讲解内容简单清晰,易于理解,而且实用性强吗,对大家认识和了解“PHP根据IP获取当前经纬度以及地域信息的方法是什么?”都有一定的帮助,有需要的朋友可以参...
这篇文章给大家分享的是“PHP根据IP获取当前经纬度以及地域信息的方法是什么?”,文中的讲解内容简单清晰,易于理解,而且实用性强吗,对大家认识和了解“PHP根据IP获取当前经纬度以及地域信息的方法是什么?”都有一定的帮助,有需要的朋友可以参考了解看看,那么接下来就跟随小编的思路来往下学习吧今天心血来潮脑海忽出一个想法,即打算写出来玩耍一下。
其中涉及几个关键功能
1.获取用户当前经纬度、地址、地域信息;
2.计算用户与用户之间的距离、路线。
3.其他,与今天的文章没有关系就不废话啦。
大概翻阅了一下资料,方法有很多,今天主要介绍一下腾讯地图的方法吧
废话不多说直接上码;
PHP求请求方法:
function getLocationInfo($ip,$key){
//$ip 用户的当前IP地址
//$key 腾讯地图开发者需要的KEY秘钥,自己去注册一下吧
//$url 腾讯地图API请求接口地址
$url = 'https://apis.map.qq.com/ws/location/v1/ip?ip='.$ip.'&
key='.$key;
$info = file_get_contents($url);
//GET请求,记住这里必须要用GET哦
$info = json_decode($info, true);
//将返回数据转JSON
return $info;
//返回请求结果
}
返回结果:
array(3) {
["ip"]=>
string(12) "0.0.0.0" //IP地址
["location"]=>
array(2) {
["lat"]=>
float(00.0000) //纬度
["lng"]=>
float(000.00000) //经度
}
["ad_info"]=>
array(5) {
["nation"]=>
string(6) "中国" //国家
["province"]=>
string(12) "黑龙江省" //省
["city"]=>
string(12) "哈尔滨市" //市
["district"]=>
string(9) "道里区" //区
["adcode"]=>
int(000000) //地址码
}
}
就这样么简单,已经拿到经纬度啦!
至于计算距离或者根据经纬度获取当前详细地址就都不是问题啦~!
php根据IP获取IP所在城市
//根据现有IP地址获取其地理位置(省份,城市等)的方法
function GetIpLookup($ip = ''){
if(empty($ip)){
return '请输入IP地址';
}
$res = @file_get_contents('http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&
ip=' . $ip);
if(empty($res)){
return false;
}
$jsonMatches = array();
preg_match('#\{
.+?\}
#', $res, $jsonMatches);
if(!isset($jsonMatches[0])){
return false;
}
$json = json_decode($jsonMatches[0], true);
if(isset($json['ret']) &
&
$json['ret'] == 1){
$json['ip'] = $ip;
unset($json['ret']);
}
else{
return false;
}
return $json;
}
$ipInfos = GetIpLookup('123.125.114.144');
//baidu.com IP地址 //ipInfos 是一个数组
var_dump($ipInfos);
以上就是关于PHP根据IP获取当前经纬度以及地域信息的方法是什么?的介绍,本文内容仅供参考,有需要的朋友可以借鉴了解看看,希望对大家学习或工作,想要了解更多欢迎关注网络,小编每天都会为大家更新不同的知识。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: PHP根据IP获取当前经纬度以及地域信息的方法是什么?
本文地址: https://pptw.com/jishu/652915.html
