Net_GeoIP::lookupLocation()

Net_GeoIP::lookupLocation() – returns the location record for specified IP address

Synopsis

require_once "Net/GeoIP.php";

object lookupLocation() ( string $addr )

Description

This method returns an instance of Net_GeoIP_Location for the specified IP address. It works only with a non-free City database.

Looking up the location record

<?php
require_once "Net/GeoIP.php";

$geoip Net_GeoIP::getInstance("/path/to/geoipdb.dat");

try {
    
$location $geoip->lookupLocation($_SERVER['REMOTE_ADDR']);

    
var_dump($location);

    
printf("City: %s, %s\nLatitude: %s, Longitude: %s\n",
           
$location->city$location->region,
           
$location->latitude$location->longitude);

} catch (
Exception $e) {
    
// Handle exception
}
?>

Parameter

Throws

This method throws an exception if the IP address is invalid.

returns the region for given IP address. (Previous) returns the name of the organization or ISP for the given IP address. (Next)
Last updated: Sun, 19 Dec 2010 — Download Documentation
Do you think that something on this page is wrong? Please file a bug report or add a note.
View this page in:

User Notes:

Note by: f.0123.6@gmail.com
Can someone post a example on how to use this filter with the FREE city database (GeoLiteCity.dat).

I got the Country lookup working and thought the city lookup is prcedurally identical, but I guess not.

here is the code that I have for city lookup. am I missing something??


require_once 'PEAR/Net/GeoIP.php';
require_once 'PEAR/Net/GeoIP/Location.php';

$geoipCountry = Net_GeoIP::getInstance('PEAR/Net/GeoIP/GeoIP.dat');
$geoipCity = Net_GeoIP::getInstance('PEAR/Net/GeoIP/GeoLiteCity.dat');



try {
$country_name=$geoipCountry->lookupCountryName($_SERVER['REMOTE_ADDR']);
echo '<br><br>';
echo $country_name;

//$city_name=$geoipCity->lookupLocation($_SERVER['REMOTE_ADDR']);
//echo '<br><br>';
//echo $city_name;

$location=$geoipCity->lookupLocation($_SERVER['REMOTE_ADDR']);
var_dump($location);

printf("City: %s, %s\nLatitude: %s, Longitude: %s\n",
$location->city, $location->region,
$location->latitude, $location->longitude);

}

catch (Exception $e)
{ // Handle exception
}
Note by: Steve_Burner@hotmail.com
It works with the free City database GeoLiteCity.dat
available from www.maxmind.com/app/geolitecity.