Sample code for 30+ languages & platforms
PHP Extension

ip-api.com IPv4 Geolocation Lookup

See more Geolocation Examples

Demonstrates how to lookup Geolocation data for an IPv4 address using the ip-api.com API.

Chilkat PHP Extension Downloads

PHP Extension
<?php

include("chilkat.php");

$success = false;

// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

$http = new CkHttp();

// Lookup an IPv4 address: 149.250.207.170  (this was a randomly chosen address)
$jsonStr = $http->quickGetStr('http://ip-api.com/json/149.250.207.170');
if ($http->get_LastMethodSuccess() == false) {
    print $http->lastErrorText() . "\n";
    exit;
}

$json = new CkJsonObject();
$json->put_EmitCompact(false);
$success = $json->Load($jsonStr);

print $json->emit() . "\n";

// Sample output:
// Use this online tool to generate parsing code from sample JSON: 
// Generate Parsing Code from JSON

// {
//   "as": "AS15854 Hewlett Packard GmbH",
//   "city": "B�blingen",
//   "country": "Germany",
//   "countryCode": "DE",
//   "isp": "Triaton Frankfurt",
//   "lat": 48.6779,
//   "lon": 8.97297,
//   "org": "EntServ Deutschland GmbH",
//   "query": "149.250.207.170",
//   "region": "BW",
//   "regionName": "Baden-W�rttemberg",
//   "status": "success",
//   "timezone": "Europe/Berlin",
//   "zip": "71034"
// }

$as = $json->stringOf('as');
$city = $json->stringOf('city');
$country = $json->stringOf('country');
$countryCode = $json->stringOf('countryCode');
$isp = $json->stringOf('isp');
$lat = $json->stringOf('lat');
$lon = $json->stringOf('lon');
$org = $json->stringOf('org');
$query = $json->stringOf('query');
$region = $json->stringOf('region');
$regionName = $json->stringOf('regionName');
$status = $json->stringOf('status');
$timezone = $json->stringOf('timezone');
$zip = $json->stringOf('zip');

?>