webklex / laravel-geoip
Laravel GeoIP 客户端
Requires
- php: >=5.5.9
- ext-curl: *
- ext-json: *
- laravel/framework: >=5.0.0
- webklex/php-geoip: ^1.0
This package is auto-updated.
Last update: 2024-09-11 00:52:11 UTC
README
描述
Laravel-GeoIP 通过使用GoGeoIP提供的开源 API,为您提供收集 IP 智能化的能力。
目录
安装
1.) 通过运行以下命令安装 Laravel-GeoIP 包
composer require webklex/laravel-geoip
2.) 如果您使用 Laravel >= 5.5,包发现将自动配置服务提供者和 GeoIP 别名。否则,对于 Laravel <= 5.4,编辑您的 config/app.php 文件并
- 将以下内容添加到
providers数组
\Webklex\LaravelGeoIP\Providers\GeoIPServiceProvider::class,
- 将以下内容添加到
aliases数组
'GeoIP' => \Webklex\LaravelGeoIP\Facades\GeoIP::class,
3.) 运行以下命令发布包配置文件 config/geoip.php
php artisan vendor:publish --provider="Webklex\LaravelGeoIP\Providers\GeoIPServiceProvider"
使用
基本使用示例
这是一个基本示例,将输出当前用户 IP 地址以及 IP 地址 "205.13.135.36" 的 geoip 信息。
use Webklex\LaravelGeoIP\Facades\GeoIP; var_dump(GeoIP::current()); var_dump(GeoIP::get("205.13.135.36"));
如果您想使用自己的 GoGeoIP 实例,只需更新配置文件中提供的端点。
响应
{
"network": {
"ip": "208.13.138.36",
"as": {
"number": 209,
"name": "CenturyLink Communications, LLC"
},
"isp": "",
"domain": "",
"tld": [".us"],
"bot": false,
"tor": false,
"proxy": false,
"proxy_type": "",
"last_seen": 0,
"usage_type": ""
},
"location": {
"region_code": "NV",
"region_name": "",
"city": "Las Vegas",
"zip_code": "89129",
"time_zone": "America/Los_Angeles",
"longitude": -115.2821,
"latitude": 36.2473,
"accuracy_radius": 20,
"metro_code": 839,
"country": {
"code": "US",
"cioc": "USA",
"ccn3": "840",
"call_code": ["1"],
"international_prefix": "011",
"capital": "Washington D.C.",
"name": "United States",
"full_name": "United States of America",
"area": 9372610,
"borders": ["CAN", "MEX"],
"latitude": 39.443256,
"longitude": -98.95734,
"max_latitude": 71.441055,
"max_longitude": -66.885414,
"min_latitude": 17.831509,
"min_longitude": -179.23108,
"currency": [{
"code": "USD",
"name": ""
}, {
"code": "USN",
"name": ""
}, {
"code": "USS",
"name": ""
}],
"continent": {
"code": "",
"name": "North America",
"sub_region": ""
}
}
}
}
支持
如果您遇到任何问题或发现任何错误,请毫不犹豫地创建一个新的问题。但是请注意,可能需要一些时间才能得到答复。无关的、粗鲁的或攻击性的问题将被无通知删除。
如果您需要 立即 或 商业 支持,请随时通过github@webklex.com给我发邮件。
一个小提醒
如果您在问题中编写源代码,请考虑正确格式化。这样会使它更容易阅读,人们也更可能评论并帮助您:)
``` php
echo 'your php code...';
```
将转换为
echo 'your php code...';
功能和拉取请求
每个人都可以为此项目做出贡献。每个拉取请求都会被考虑,但也可以拒绝。为了防止不必要的工作,如果您打算进行较大更改,请首先考虑创建一个 功能问题。当然,如果您只是希望一个功能,您也可以创建一个新的 功能问题。
变更日志
请参阅CHANGELOG 了解最近的变化。
安全
如果您发现任何与安全相关的问题,请通过电子邮件github@webklex.com联系,而不是使用问题跟踪器。
致谢
许可证
MIT 许可证(MIT)。有关更多信息,请参阅许可证文件。