PHPackages                             mnavarrocarter/countries - 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. mnavarrocarter/countries

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

mnavarrocarter/countries
========================

A library for working with Countries in a object oriented way

010PHP

Since Sep 4Pushed 7y ago1 watchersCompare

[ Source](https://github.com/mnavarrocarter/countries)[ Packagist](https://packagist.org/packages/mnavarrocarter/countries)[ RSS](/packages/mnavarrocarter-countries/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

MNC Country Info
================

[](#mnc-country-info)

A PHP library for working with Country information as objects, consumed from .

Installation
------------

[](#installation)

Install is done via composer:

```
composer require mnavarrocarter/countries

```

Usage
-----

[](#usage)

### The Country Fetcher

[](#the-country-fetcher)

### The CountryRepositoryInterface

[](#the-countryrepositoryinterface)

### The CountryCollection object

[](#the-countrycollection-object)

Doctrine Integration
--------------------

[](#doctrine-integration)

This library contains a doctrine repository implementing the CountryRepository and doctrine mappings for the different objects that compose the Country aggregate root.

Symfony Bundle Config
---------------------

[](#symfony-bundle-config)

This library is also bridged to be used a Symfony Bundle. You can customize almost every aspect of the workings of the library, like defining the default Repository to use, and configuring other options like caching.

```
mnc_countries:
    repository:
        # Alias to the interface
        default: mnc_countries.in_memory_repository
        # If true, the default one will be DoctrineCountryRepository
        use_doctrine: true
    fetcher:
        # Alias to the interface
        default: mnc_countries.object_fetcher
        # If true, the default one will be CacheCountryFectherDecorator
        use_cache_decorator: true
        # Cache service id. Redis is pretty efficient.
        cache: Psr\SimpleCache\CacheInterface
```

###  Health Score

19

—

LowBetter than 10% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity40

Maturing project, gaining track record

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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/79e7625b4370021decec6b5b24191d657cf1f0435181bc26791314317e71155a?d=identicon)[mnavarrocarter](/maintainers/mnavarrocarter)

### Embed Badge

![Health badge](/badges/mnavarrocarter-countries/health.svg)

```
[![Health](https://phpackages.com/badges/mnavarrocarter-countries/health.svg)](https://phpackages.com/packages/mnavarrocarter-countries)
```

PHPackages © 2026

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