team24/geoservice

Geolocation module using multiple free geo services

1.3.3 2021-07-15 09:43 UTC

This package is auto-updated.

Last update: 2024-04-15 18:24:22 UTC


README

Searching geo data by IP address

Description

Include several services:

  • Maxmind
  • SypexGeo

Installation

Composer.

Add team24/geoservice to your composer.json OR

composer require team24/geoservice

If you have no composer, install beforehand:

Run in the project's root:

curl -s http://getcomposer.org/installer | php

And then :

php composer.phar init

Usage

require 'vendor/autoload.php';

use GeoServices\GeoService;
use GeoServices\GeoException;

$g = new GeoService();
try {
    $data = $g->lookup('95.153.74.242');
    var_dump($data->city);
} catch (GeoException $ex) {
    echo $ex->getMessage();
}

$data is an instance of GeoObject, containing these properties:

  • countryName
  • countryCode
  • regionName
  • longitude
  • latitude
  • city
  • zip

To set timeout in milliseconds:

$g->setGlobalTimeout(5000);

To set timeout for each online service in milliseconds:

$g->setRequestTimeout(1000);