# GeoIP Functions

## Introduction

The GeoIP extension allows you to find the location of an IP address. City, State, Country, Longitude, Latitude, and other information as all, such as ISP and connection type can be obtained with the help of GeoIP.

## Requirements

This extension requires the GeoIP C library version 1.4.0 or higher to be installed. You can grab the latest version from » http://www.maxmind.com/app/c and compile it yourself.

By default, you will only have access to the Free GeoIP Country or GeoLite City databases. While this module can work with other types of database, you must buy a commercial license from » Maxmind.

## Installation

This » PECL extension is not bundled with PHP.

Information for installing this PECL extension may be found in the manual chapter titled Installation of PECL extensions. Additional information such as new releases, downloads, source files, maintainer information, and a CHANGELOG, can be located here: » http://pecl.php.net/package/geoip.

## Resource Types

This extension has no resource types defined.

## Predefined Constants

The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.

`GEOIP_COUNTRY_EDITION` (integer)
`GEOIP_REGION_EDITION_REV0` (integer)
`GEOIP_CITY_EDITION_REV0` (integer)
`GEOIP_ORG_EDITION` (integer)
`GEOIP_ISP_EDITION` (integer)
`GEOIP_CITY_EDITION_REV1` (integer)
`GEOIP_REGION_EDITION_REV1` (integer)
`GEOIP_PROXY_EDITION` (integer)
`GEOIP_ASNUM_EDITION` (integer)
`GEOIP_NETSPEED_EDITION` (integer)
`GEOIP_DOMAIN_EDITION` (integer)

The following constants are for net speed:

`GEOIP_UNKNOWN_SPEED` (integer)
`GEOIP_DIALUP_SPEED` (integer)
`GEOIP_CABLEDSL_SPEED` (integer)
`GEOIP_CORPORATE_SPEED` (integer)

## Table of Contents

- geoip_country_code_by_name — Get the two letter country code
- geoip_country_code3_by_name — Get the three letter country code
- geoip_country_name_by_name — Get the full country name
- geoip_database_info — Get GeoIP Database information
- geoip_db_avail — Determine if GeoIP Database is available
- geoip_db_filename — Returns the filename of the corresponding GeoIP Database
- geoip_db_get_all_info — Returns detailed informations about all GeoIP database types
- geoip_id_by_name — Get the Internet connection speed
- geoip_org_by_name — Get the organization name
- geoip_record_by_name — Returns the detailed City information found in the GeoIP Database
- geoip_region_by_name — Get the country code and region