vitalybaev / sypexgeo
支持 GeoIP 服务(sypexgeo.net)。
v0.1.0
2018-03-26 17:37 UTC
Requires
- php: >=5.4.0
This package is auto-updated.
Last update: 2024-09-08 07:56:48 UTC
README
数据来源于数据库和 http://sypexgeo.net 服务。
安装
要获取 SypexGeo 的最新版本,只需在您的 composer.json
文件中添加依赖即可。
"scriptixru/sypexgeo": "0.2.*@dev"
然后,您需要运行 composer install
命令来下载它并更新自动加载器。
一旦安装了 GeoIP,您需要将服务提供者注册到应用程序中。打开 config/app.php
文件,并找到 providers
键。
'providers' => array( 'Scriptixru\SypexGeo\SypexGeoServiceProvider', )
GeoIP 还提供了一个外观(facade),它提供了创建集合的静态语法。您可以在 config/app.php
文件的 aliases
键中注册外观。
'aliases' => array( 'SypexGeo' => 'Scriptixru\SypexGeo\SypexGeoFacade', )
发布配置文件
从项目根目录下命令行运行此命令
$ php artisan vendor:publish
配置文件将被发布到 config/sypexgeo.php
使用方法
获取给定 IP 地址的位置数据
$location = \SypexGeo::get('232.223.11.11');
示例数据
如果从数据库接收数据 - config/sypexgeo.php ('type' => 'database')
[ 'city' => [ 'id' => 524901, 'lat' => 55.75222, 'lon' => 37.61556, 'name_ru' => 'Москва', 'name_en' => 'Moscow', 'okato' => '45', ], 'region' => [ 'id' => 524894, 'lat' => 55.76, 'lon' => 37.61, 'name_ru' => 'Москва', 'name_en' => 'Moskva', 'iso' => 'RU-MOW', 'timezone' => 'Europe/Moscow', 'okato' => '45', ], 'country' => [ 'id' => 185, 'iso' => 'RU', 'continent' => 'EU', 'lat' => 60, 'lon' => 100, 'name_ru' => 'Россия', 'name_en' => 'Russia', 'timezone' => 'Europe/Moscow', ], ];
如果从 Web 服务接收数据 - config/sypexgeo.php ('type' => 'web_service', 'view' => 'json')
[ "ip" => "77.37.136.11" "city" => array:8 [ "id" => 524901 "lat" => 55.75222 "lon" => 37.61556 "name_ru" => "Москва" "name_en" => "Moscow" "okato" => "45" "vk" => 1 "population" => 10381222 ] "region" => array:11 [ "id" => 524894 "lat" => 55.76 "lon" => 37.61 "name_ru" => "Москва" "name_en" => "Moskva" "iso" => "RU-MOW" "timezone" => "Europe/Moscow" "okato" => "45" "auto" => "77, 97, 99, 177, 197, 199, 777" "vk" => 0 "utc" => 3 ] "country" => array:18 [ "id" => 185 "iso" => "RU" "continent" => "EU" "lat" => 60 "lon" => 100 "name_ru" => "Россия" "name_en" => "Russia" "timezone" => "Europe/Moscow" "area" => 17100000 "population" => 140702000 "capital_id" => 524901 "capital_ru" => "Москва" "capital_en" => "Moscow" "cur_code" => "RUB" "phone" => "7" "neighbours" => "GE,CN,BY,UA,KZ,LV,PL,EE,LT,FI,MN,NO,AZ,KP" "vk" => 1 "utc" => 3 ] "error" => "" "request" => -2 "created" => "2015.04.08" "timestamp" => 1428516249 ];
默认位置
如果没有找到位置,将返回带有 default
参数设置为 true
的回退位置。要设置自己的默认值,请在配置文件 config/geoip.php
中进行更改。
服务
Scriptix
- 数据库服务:要使用 SypexGeo 数据库版本的服务,从 (vendor/scriptixru/sypexgeo/scr/Scriptixru/SypexGeo) 下载
SxGeoCityMax.dat
,并将其提取到/database/sypexgeo/
。就这样。