dmitrakovich / sxgeo
Supports GeoIP services (sypexgeo.net).
Requires
- php: >=7.0
This package is auto-updated.
Last update: 2024-11-07 22:55:42 UTC
README
The data comes from a database and from service http://sypexgeo.net
Installation
- SypexGeo for Laravel 5 on Packagist
- SypexGeo for Laravel 5 on GitHub
- SypexGeo for Laravel 7 on GitHub
- SypexGeo for Laravel 7 on Packagist
To get the latest version of SypexGeo simply require it in your composer.json
file.
"default-089/sxgeo": "0.15.*@dev"
You'll then need to run composer install
to download it and have the autoloader updated.
The package will automatically register a service provider.
Publish the configurations
Run this on the command line from the root of your project:
$ php artisan vendor:publish --tag=sxgeo-config
A configuration file will be publish to config/sxgeo.php
Usage
Getting the location data for a given IP:
$location = \SypexGeo::get('232.223.11.11');
Example Data
If data is received from the database - 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', ], ];
If data is received from the webservice - 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 Location
In the case that a location is not found the fallback location will be returned with the default
parameter set to true
. To set your own default change it in the configurations config/geoip.php
Services
Scriptix
- Database Service: To use the database version of SypexGeo services download the
SxGeoCityMax.dat
from (vendor/scriptixru/sypexgeo/scr/Scriptixru/SypexGeo) and extract it to/database/sypexgeo/
. And that's it.