好久没水文章了,博客都要荒废了(没兴起过啊喂)
辣么想必大家都看到文章缩略图了,没错我就是为了用这个夏洛特的图片接口才捣鼓的这代码。(缩略图原本是夏洛特的图片api,之前cdn服务器重装系统忘记备份了,所以...)
首先感谢xhboke写了这么好康的api源码,github地址在这里

但是这个接口里的地理位置信息获取接口已经凉了,而且里面的浏览器信息啥的太长了,有时候显示不下,所有本人就自己写了个根据ip获取地理位置的api。
当然数据库还是别人的啦~
首先是ip查询地理位置,本人找到的接口是http://ipwhois.io,根据官网说明每个月可以免费调用一万次。进去也能看到接口返回信息的说明。调用方法:

$info=file_get_contents('http://ipwhois.app/json/'.$_GET['ip']);
$info=json_decode($info,true);

当然,老外的接口,返回信息是英文,因此我们可以用翻译api进行翻译,这里用的是本人比较喜欢的有道的api

function translate($str){
$result=file_get_contents('http://fanyi.youdao.com/translate?&doctype=json&type=AUTO&i='.$str);
$json=json_decode($result,true);
return $json['translateResult'][0][0]['tgt'];
//return json_decode(file_get_contents('http://fanyi.youdao.com/translate?&doctype=json&type=AUTO&i='.$str),true)['translateResult']['tgt'];
}

这样我们的接口就可以写出来了。
此外还有获取天气的api,这里我用的是openweathermap.org,需要注册并获取key才行,注册验证时必须magic上网,免费用户api一个月可调用一百万次。

他的api也可以在官网上查看,这里放出一个参考调用

$city='Shanghai';
$key='your key';
$weather=file_get_contents('http://api.openweathermap.org/data/2.5/weather?q='.$city.'&appid='.$key.'&lang=zh_cn&units=metric');
$weather=json_decode($weather,true);

如此写出api就只是时间问题辣~

本文作者:小欢

本文链接:php根据ip获取地理位置、天气信息 - https://blog.xh-ws.com/archives/ip_to_geo_weather.html

版权声明:如无特别声明,本文即为原创文章,仅代表个人观点,版权归 小欢博客 所有,遵循知识共享署名-相同方式共享 4.0 国际许可协议。转载请注明出处!