好久没水文章了,博客都要荒废了(没兴起过啊喂)
如果没有出现特殊情况,上面应该已经加载出了夏洛特Charlotte的IP签名档。这种签名档经常能在一些博客之类的网站里看到,没错我就是为了用这个夏洛特的图片接口才捣鼓的这代码。夏洛特赛高!
首先感谢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签名档 根据ip获取地理位置、天气信息 - https://www.xh-ws.com/archives/ip_to_geo_weather.html
版权声明:如无特别声明,本文即为原创文章,仅代表个人观点,版权归 小欢博客 所有,遵循知识共享署名-相同方式共享 4.0 国际许可协议。转载请注明出处!
最后一次更新于2023-08-07
0 条评论