khaleejinfotech/ip2location
Composer 安装命令:
composer require khaleejinfotech/ip2location
包简介
Laravel package to determine location using ip address with lat-long and proxy
README 文档
README
IP2Location Laravel extension enables the user to find the country, region, city, coordinates, time zone, ISP from IP address using VPNAPI.io.
Note: This extension works in Laravel 8 and Laravel 9.
INSTALLATION
Run the command: composer require khaleejinfotech/ip2location to download the package into the Laravel platform.
After you have installed the package, open your Laravel config file config/app.php and add the following lines.
In the $providers array add the service providers for this package.
Khaleejinfotech\IP2Location\IP2LocationServiceProvider::class,
Publish the config file with
php artisan vendor:publish --tag="ip2location"
Open the config/ip2location.php in any text editor and add your api key obtained from vpnapi.io
<?php return [ 'api_key' => env('IP2LOCATION_API') ];
USAGE
Create a TestController in Laravel using the below command line
php artisan make:controller TestController
Open the app/Http/Controllers/TestController.php in any text editor. To use IP2Location, add the below lines into the controller file.
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Khaleejinfotech\IP2Location\IP2Location; class TestController extends Controller { //Create a lookup function for display public function lookup(){ //Try query the geolocation information of 8.8.8.8 IP address $ip2Location = new IP2Location(); $ip2Location->setIP('8.8.8.8'); $ip2Location->lookup(); $response = $ip2Location->getResponse(); echo 'IP Address : ' . $response->getIp() . "<br>"; echo 'Detect VPN : ' . $response->isVPN() . "<br>"; echo 'Detect Proxy : ' . $response->isProxy() . "<br>"; echo 'Detect Tor : ' . $response->isTor() . "<br>"; echo 'Country Code : ' . $response->getCountryCode() . "<br>"; echo 'Country Name : ' . $response->getCountryName() . "<br>"; echo 'Region Name : ' . $response->getRegionName() . "<br>"; echo 'Region Code : ' . $response->getRegionCode() . "<br>"; echo 'City Name : ' . $response->getCity() . "<br>"; echo 'Latitude : ' . $response->getLatitude() . "<br>"; echo 'Longitude : ' . $response->getLongitude() . "<br>"; echo 'Time Zone : ' . $response->getTimeZone() . "<br>"; } }
Add the following line into the routes/web.php file.
Route::get('test', [TestController::class,'lookup');
Enter the URL localhost:8000/test and run. You should see the information of 8.8.8.8 IP address.
khaleejinfotech/ip2location 适用场景与选型建议
khaleejinfotech/ip2location 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 15 次下载、GitHub Stars 达 0, 最近一次更新时间为 2022 年 08 月 11 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 khaleejinfotech/ip2location 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 khaleejinfotech/ip2location 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 15
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 19
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2022-08-11