You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is the GeoIP2 provider from the PHP Geocoder. This is a READ ONLY repository. See the
main repo for information and documentation.
Install
composer require geocoder-php/geoip2-provider
Usage
The provider requires either a database file, or paid access to the web service.
Using a database file
Both free geolite2 and the paid precision
city and country
databases are supported.
//Use a Maxmind GeoIP2 Database:$reader = new \GeoIp2\Database\Reader('/path/to/geolite2.mmdb');
$adapter = new \Geocoder\Provider\GeoIP2\GeoIP2Adapter($reader);
$geocoder = new \Geocoder\Provider\GeoIP2\GeoIP2($adapter);
$address = $geocoder->geocodeQuery(\Geocoder\Query\GeocodeQuery::create('74.200.247.59'))->first();
Using the Precision Web Service (API)
The provider also support the Precision Web Services. Please note that these API are paid, and billed per request.
// Use the Maxmind GeoIP2 API:$reader = new \GeoIp2\WebService\Client(<account_id>, '<licence_key>');
$adapter = new \Geocoder\Provider\GeoIP2\GeoIP2Adapter($reader);
$geocoder = new \Geocoder\Provider\GeoIP2\GeoIP2($adapter);
$address = $geocoder->geocodeQuery(\Geocoder\Query\GeocodeQuery::create('74.200.247.59'))->first();
Contribute
Contributions are very welcome! Send a pull request to the main repository or
report any issues you find on the issue tracker.