Download the PHP package ndevs-eu/geo-ip-bundle without Composer

On this page you can find all versions of the php package ndevs-eu/geo-ip-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package geo-ip-bundle

PHPStan Level 9 CI Latest Stable Version Total Downloads License

🌍 NDevs GeoIP Bundle

Symfony bundle for detecting user geolocation based on IP address.
Supports MaxMind GeoLite2 and IP2Location, with optional fallback, mock IP in dev mode, and automatic request listener.


βš™οΈ Installation


πŸ“ Configuration structure (config/packages/geo_ip.yaml)

In dev environment you can add a mock IP for testing:


πŸ§ͺ Usage in code

βœ… Accessing geo data

The listener injects geoIp attribute into each request when enabled.


🌍 Downloading databases

πŸ“₯ MaxMind (GeoLite2 City)

  1. Register at maxmind.com
  2. Get your License Key
  3. Download database manually or run:

πŸ“₯ IP2Location (Lite BIN)

  1. Get free version
  2. Download manually or run:

Make sure the path in your config matches the location of extracted files.


πŸ§ͺ Mocking IP in dev

To test without relying on real headers:


🧰 Available Console Commands

Command Description
geoip:pull-maxmind-database Downloads the latest MaxMind GeoIP DB
geoip:pull-ip2loc-lite-database Downloads the latest IP2Location Lite DB

βœ… Requirements


πŸ“Œ Features

βœ… Auto-detects IP from headers (X-Forwarded-For, Cloudflare, etc.)
βœ… Supports fallback resolver if primary fails
βœ… Allows IP mocking in dev mode
βœ… Docker/proxy/CDN-friendly
βœ… Easy integration via DI


πŸ™‹ FAQ

What if the IP is not found?

geoIp attribute will contain null values. No exception is thrown.

What if I don’t use IP2Location?

Just don't define a fallback resolver in config.


πŸ“„ License

MIT

GitAds Sponsored

Sponsored by GitAds


All versions of geo-ip-bundle with dependencies

PHP Build Version
Package Version
Requires php Version ^8.2 || ^8.3
symfony/framework-bundle Version ^6.4 || ^7.0
geoip2/geoip2 Version ^3.2
ip2location/ip2location-php Version ^9.7
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package ndevs-eu/geo-ip-bundle contains the following files

Loading the files please wait ...