adrianorosa / laravel-geolocation
Laravel 地理位置包,用于获取给定IP地址的详细信息
v1.2.0
2023-03-08 00:16 UTC
Requires
- php: >=7.2
- ext-json: *
- ext-openssl: *
- guzzlehttp/guzzle: ^6.0|^7.0
- illuminate/support: ~5.7.0|~5.8.0|^6.0|^7.0|^8.0|^9.0|^10.0
Requires (Dev)
- orchestra/testbench: ^7.4
- phpunit/phpunit: ^9.5
README
Laravel 包,用于获取给定IP地址的区域、城市和国家详细信息。
此包是 IpInfo 提供商的包装器,但我们计划实现 MaxMind GeoIP2 数据库的驱动程序。
安装
composer require adrianorosa/laravel-geolocation
此包支持Laravel的最新版本,目前测试了5.8+,但应该也能在旧版本上正常工作。
从Laravel 5.5开始,无需在 AppServiceProvider
数组中添加 ServiceProvider。Laravel 使用包发现来加载此提供程序。
使用方法
无需额外设置即可开始使用,一旦通过composer安装,您就可以调用外观。
<?php use Adrianorosa\GeoLocation\GeoLocation; $details = GeoLocation::lookup('8.8.8.8'); echo $details->getIp(); // 8.8.8.8 echo $details->getCity(); // Mountain View echo $details->getRegion(); // California echo $details->getCountry(); // United States echo $details->getLatitude(); // 37.386 echo $details->getLongitude(); // -122.0838 var_dump($details->toArray()); // Array // ( // [city] => Mountain View // [region] => California // [country] => United States // [countryCode] => US // [latitude] => 37.386 // [longitude] => -122.0838 //)
控制台命令
要显示IP地址或您当前网络IP地址的详细信息,可以使用 artisan 命令。
php artisan geolocation:lookup --ip 8.8.8.8 +---------+---------------+------------+----------------+-------------+----------+-----------+ | ip | city | region | country | countryCode | latitude | longitude | +---------+---------------+------------+----------------+-------------+----------+-----------+ | 8.8.8.8 | Mountain View | California | Estados Unidos | US | 37.386 | -122.0838 | +---------+---------------+------------+----------------+-------------+----------+-----------+
覆盖配置和翻译
此包为IpInfo提供了一些配置,并为国家名称提供了翻译。
您可以使用默认值,这已经足够好了,或者使用以下命令发布:
发布所有配置和翻译
php artisan vendor:publish
发布配置
php artisan vendor:publish --tag=geolocation-config
发布翻译
php artisan vendor:publish --tag=geolocation-translations
作者
Adriano Rosa (https://adrianorosa.com)
许可证
版权所有 © 2021, Adriano Rosa info@adrianorosa.com 保留所有权利。
有关完整的版权和许可信息,请参阅此项目源代码根目录中的 LICENSE 文件。