webklex/laravel-geoip

Laravel GeoIP客户端

1.0.1 2020-10-17 23:48 UTC

This package is auto-updated.

Last update: 2024-09-11 00:52:11 UTC


README

Latest Version on Packagist Software License Build Status Total Downloads Hits

描述

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...';

功能 & pull requests

每个人都可以为此项目做出贡献。每个pull request都会被考虑,但也可能被拒绝。为了防止不必要的劳动,如果您计划进行较大的更改,请首先考虑创建一个功能问题。当然,如果您只是想要一个功能,也可以创建一个新的功能问题;)

变更日志

请参阅CHANGELOG以获取有关最近更改的更多信息。

安全

如果您发现任何安全相关的问题,请通过电子邮件github@webklex.com而不是使用问题跟踪器。

致谢

许可协议

MIT许可(MIT)。有关更多信息,请参阅许可文件