PHPackages                             smartframe-technologies/ip2location - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. smartframe-technologies/ip2location

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

smartframe-technologies/ip2location
===================================

Based on IP2Location PHP API with extra downloader tool

1.3.0(4y ago)157Apache-2.0PHPPHP ^7.4 || ^8.0

Since Oct 2Pushed 4y agoCompare

[ Source](https://github.com/SmartFrame-Technologies/ip2location)[ Packagist](https://packagist.org/packages/smartframe-technologies/ip2location)[ RSS](/packages/smartframe-technologies-ip2location/feed)WikiDiscussions master Synced 6d ago

READMEChangelog (5)Dependencies (5)Versions (11)Used By (0)

\#ip2location

Based on IP2Location PHP API with extra downloader tool

Build Status
------------

[](#build-status)

[![Build Status](https://camo.githubusercontent.com/c860b130f04cd7f267cf05e0fa1605f628380dba4d438d327930be4ba3d7e3f9/68747470733a2f2f7472617669732d63692e636f6d2f536d6172744672616d652d546563686e6f6c6f676965732f6970326c6f636174696f6e2e7376673f746f6b656e3d3668367267767866694d7169396f36567a6e5a73266272616e63683d6d6173746572)](https://travis-ci.com/SmartFrame-Technologies/ip2location)

Basic usage
-----------

[](#basic-usage)

Use static factory to get Exchanger. It requires you to give url with token and packages you desire to download.

```
$dbExchanger = DatabaseExchangeFactory::create($downloadUrl, $package)

```

Then specify file path:

```
$dbExchanger->exchange('folder/ipDatabase.bin');

```

### Usage with cache

[](#usage-with-cache)

This tool can also use S3 as cache to store DB for many server instances.

```
$dbExchanger = DatabaseExchangeFactory::createWithS3Cache(
                           $downloadUrl,
                           $packages,
                           $s3PhpClient, //AWS S3 Client
                           $s3Bucket,
                           $s3Prefix //folder name
                       );

```

Then specify file path:

```
$dbExchanger->exchange('folder/ipDatabase.bin');

```

License
-------

[](#license)

Copyright 2020 SmartFrame Technologies

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at:

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

###  Health Score

29

—

LowBetter than 59% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity65

Established project with proven stability

 Bus Factor1

Top contributor holds 62.9% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~59 days

Total

6

Last Release

1756d ago

PHP version history (2 changes)1.0.0PHP ^7.4

1.2.0PHP ^7.4 || ^8.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/a894a1437fe339df40eaef18483d65f3c4c01c1941728bdc10404e7910b4c2e7?d=identicon)[rollo-smartframe](/maintainers/rollo-smartframe)

---

Top Contributors

[![WitoldAtSmartframe](https://avatars.githubusercontent.com/u/75019610?v=4)](https://github.com/WitoldAtSmartframe "WitoldAtSmartframe (22 commits)")[![rollo-smartframe](https://avatars.githubusercontent.com/u/66439633?v=4)](https://github.com/rollo-smartframe "rollo-smartframe (10 commits)")[![grzegorzplech](https://avatars.githubusercontent.com/u/13719581?v=4)](https://github.com/grzegorzplech "grzegorzplech (3 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/smartframe-technologies-ip2location/health.svg)

```
[![Health](https://phpackages.com/badges/smartframe-technologies-ip2location/health.svg)](https://phpackages.com/packages/smartframe-technologies-ip2location)
```

###  Alternatives

[shlinkio/shlink

A self-hosted and PHP-based URL shortener application with CLI and REST interfaces

4.8k4.3k](/packages/shlinkio-shlink)[ralphjsmit/laravel-helpers

A package containing handy helpers for your Laravel-application.

13704.6k2](/packages/ralphjsmit-laravel-helpers)[dhlparcel/magento2-plugin

DHL Parcel plugin for Magento 2

11180.5k2](/packages/dhlparcel-magento2-plugin)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

245.2k](/packages/aedart-athenaeum)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
