kielabokkie / ipdata
使用ipdata.co API获取IP地址信息
0.2.5
2020-09-16 09:35 UTC
Requires
- php: >=7.1
- guzzlehttp/guzzle: ^6.3|^7.0
Requires (Dev)
- mockery/mockery: ^1.0
- phpunit/phpunit: ^7.0
- symfony/var-dumper: ^4.0
README
使用ipdata.co API获取IP地址信息。如果您使用Laravel,请查看kielabokkie/laravel-ipdata。
先决条件
Ipdata提供免费计划,每天允许您进行1,500次请求,如果您需要更多,则提供付费计划。所有计划都需要API密钥,您需要在他们的网站上注册以获取一个。
安装
您可以通过composer安装此包
composer require kielabokkie/ipdata
用法
调用IP地址的查找
请注意,在实例化Ipdata类时,您必须将API密钥作为参数传递。
$ipdata = new \Kielabokkie\Ipdata('yourapikey');
$res = $ipdata->lookup();
查找特定IP地址
$ipdata = new \Kielabokkie\Ipdata('yourapikey');
$res = $ipdata->lookup('1.1.1.1');
Ipdata API将返回以下数据
{
"ip": "1.1.1.1",
"is_eu": false,
"city": "Research",
"region": "Victoria",
"region_code": "VIC",
"country_name": "Australia",
"country_code": "AU",
"continent_name": "Oceania",
"continent_code": "OC",
"latitude": -37.7,
"longitude": 145.1833,
"asn": "AS13335",
"organisation": "Cloudflare Inc",
"postal": "3095",
"calling_code": "61",
"flag": "https://ipdata.co/flags/au.png",
"emoji_flag": "🇦🇺",
"emoji_unicode": "U+1F1E6 U+1F1FA",
"languages": [
{
"name": "English",
"native": "English"
}
],
"currency": {
"name": "Australian Dollar",
"code": "AUD",
"symbol": "AU$",
"native": "$",
"plural": "Australian dollars"
},
"time_zone": {
"name": "Australia/Melbourne",
"abbr": "AEST",
"offset": "+1000",
"is_dst": false,
"current_time": "2018-06-20T11:41:23.068040+10:00"
},
"threat": {
"is_tor": false,
"is_proxy": false,
"is_anonymous": false,
"is_known_attacker": false,
"is_known_abuser": false,
"is_threat": false,
"is_bogon": false
}
}
此库将使用json_decode运行响应,为您提供一个易于操作的对象,例如
echo $res->country_name; // Australia echo $res->flag; // https://ipdata.co/flags/au.png