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