C Library
PHP Module
Perl Module
Ruby Library
Python Library
Apache Module
Nginx Module
Node.js Module
Cocoa / Objective C Library
Pascal Library
D Library
Go Package
Erlang Module
Haskell Package
Debian Package
Lua Package
Kotlin Module
Scala Library
OpenResty Package
Splunk Add-on
Apache Kafka Transform
OCaml Module
Deno Module
R Package
.NET Component
Java Component
HTTP Module
ActiveX / COM DLL
IP2Location IP Geolocation PHP API
This project has been merged into IP2Location-PHP-Module. We will no longer maintain and support this project. Please visit IP2Location-PHP-Module for latest updates or enhancements.
This PHP module helps the user to geolocate the country, region, city, coordinates, ZIP code, ISP, domain name, timezone, connection speed, IDD code, area code, weather station code, weather station name, MCC, MNC, mobile brand name, elevation and usage type that any IP address or host name originates from by calling the IP2Location API.
NOTE: This module will require an IP2Location Web Service API key to function.
Sample Codes
<?php
require_once 'class.IP2LocationAPI.php';
$apiKey = 'YOUR_API_KEY';
$package = 'WS24'; // Package: WS1 - WS24
$useSSL = false; // Use HTTP or HTTPS (Secure, but slower)
$ip = '8.8.8.8';
// Initialize
$location = new IP2LocationAPI($apiKey, $package, $useSSL);
/*
Translate country, region, and city name to desired language.
Refer to product page for available language code.
*/
$location->setLanguage('zh-cn');
/*
Enable add ons to display more result.
Refer to product page for available add ons.
*/
$location->setAddOns([
'continent', 'country', 'region', 'city', 'geotargeting', 'country_groupings', 'time_zone_info',
]);
// Start query
if (!$location->query($ip)) {
die('ERROR');
}
echo '<pre>';
echo 'Country Code : ' . $location->countryCode . "\n";
echo 'Country Name : ' . $location->countryName . "\n";
echo 'Region Name : ' . $location->regionName . "\n";
echo 'City Name : ' . $location->cityName . "\n";
echo 'Latitude : ' . $location->latitude . "\n";
echo 'Longitude : ' . $location->longitude . "\n";
echo 'ZIP Code : ' . $location->zipCode . "\n";
echo 'Time Zone : ' . $location->timeZone . "\n";
echo 'ISP : ' . $location->isp . "\n";
echo 'Domain : ' . $location->domain . "\n";
echo 'Latitude : ' . $location->netSpeed . "\n";
echo 'IDD Code : ' . $location->iddCode . "\n";
echo 'Area Code : ' . $location->areaCode . "\n";
echo 'Weather Station Code : ' . $location->weatherStationCode . "\n";
echo 'Weather Station Name : ' . $location->weatherStationName . "\n";
echo 'Mobile Brand : ' . $location->mobileBrand . "\n";
echo 'Elevation : ' . $location->elevation . "\n";
echo 'Usage Type : ' . $location->usageType . "\n\n";
if ($location->continent) {
echo 'Continent Name : ' . $location->continent['name'] . "\n";
echo 'Continent Code : ' . $location->continent['code'] . "\n";
echo 'Hemisphere : ' . $location->continent['hemisphere'] . "\n";
echo 'Localize Name : ' . $location->continent['translated'] . "\n\n";
}
if ($location->country) {
echo 'Country Name : ' . $location->country['name'] . "\n";
echo 'Localize Name : ' . $location->country['translated'] . "\n";
echo 'Alpha 3 Code : ' . $location->country['alpha3Code'] . "\n";
echo 'Numeric Code : ' . $location->country['numericCode'] . "\n";
echo 'Demonym : ' . $location->country['demonym'] . "\n";
echo 'Flag : ' . $location->country['flag'] . "\n";
echo 'Capital : ' . $location->country['capital'] . "\n";
echo 'Total Area : ' . $location->country['totalArea'] . "\n";
echo 'Population : ' . $location->country['population'] . "\n";
echo 'Currency : ' . $location->country['currencyName'] . ' (' . $location->country['currencyCode'] . ', ' . $location->country['currencySymbol'] . ')' . "\n";
echo 'Language : ' . $location->country['languageName'] . ' (' . $location->country['languageCode'] . ')' . "\n";
echo 'IDD Code : ' . $location->country['iddCode'] . "\n";
echo 'TLD : ' . $location->country['tld'] . "\n\n";
}
if ($location->region) {
echo 'Region Name : ' . $location->region['name'] . "\n";
echo 'Localize Name : ' . $location->region['translated'] . "\n";
echo 'Region Code : ' . $location->region['code'] . "\n\n";
}
if ($location->city) {
echo 'City Name : ' . $location->city['name'] . "\n";
echo 'Localize Name : ' . $location->city['translated'] . "\n\n";
}
if ($location->geotargeting) {
echo 'Metro Code : ' . $location->geotargeting['metro'] . "\n\n";
}
if ($location->countryGroupings) {
foreach ($location->countryGroupings as $group) {
echo 'Group of : ' . $group->name . ' (' . $group->acronym . ')' . "\n";
}
echo "\n";
}
if ($location->timeZoneInfo) {
echo 'Olson : ' . $location->timeZoneInfo['olson'] . "\n";
echo 'Current Time : ' . $location->timeZoneInfo['currentTime'] . "\n";
echo 'GMT Offset : ' . $location->timeZoneInfo['gmtOffset'] . "\n";
echo 'DST : ' . $location->timeZoneInfo['isDST'] . "\n";
}
echo '</pre>';

Discover Your User Locations
Retrieve geolocation data for FREE now!