PHPackages                             tinned-software/php-libphono - 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. [Validation &amp; Sanitization](/categories/validation)
4. /
5. tinned-software/php-libphono

ActiveLibrary[Validation &amp; Sanitization](/categories/validation)

tinned-software/php-libphono
============================

libphono is a php library which allows phone numbers to be converted from local or national format into an international number which conforms to the E.164 standard.

2.0.0(8y ago)8272GPL-3.0PHPPHP &gt;5.3.3

Since Oct 16Pushed 7y ago1 watchersCompare

[ Source](https://github.com/tinned-software/PHP-libphono)[ Packagist](https://packagist.org/packages/tinned-software/php-libphono)[ RSS](/packages/tinned-software-php-libphono/feed)WikiDiscussions master Synced 6d ago

READMEChangelog (2)Dependencies (1)Versions (3)Used By (0)

PHP-libphono
============

[](#php-libphono)

Pronounced "/ lib fo no /", *libphono* is a PHP library used for E.164 phone number normalization. It is intended to be a small, fast way to work with telephone numbers.

What is *libphono*?
-------------------

[](#what-is-libphono)

*libphono* a library which allows phone numbers to be converted from local or national format into an international number which conforms to the E.164 standard. This is achieved using a data set which contains information about published dial plans. *libphono* allows an input number to be converted into a variety of different formats, e.g. local, national or E.164 international.

The library is designed to be simple to use, small and fast. The name *libphono* is derived from "lib phone number" shortening each part of the name: lib(rary)-pho(ne)-no(number).

In contrast to other implementations, logic for country specific dial plan specifics is encapsulated in the class itself and does not need to be handled by the developer. This brings us to...

What is *libphono* not?
-----------------------

[](#what-is-libphono-not)

*libphono* is not intended to be a replacement for formatting libraries such as Google's "libphonenumber". The goal of the project is not to provide specific geographic or carrier information about numbers or number formatting.

Specific information is not supported, such as:

- DOES NOT: provide specific information regarding geographic / carrier information about a number,
- DOES NOT: provide information about whether the number is a fixed line or mobile device,
- DOES NOT: convert numbers into formatted strings, e.g. "+1 (614) 544 5874",
- DOES NOT: provide plausability check for numbers - syntax check for specific countries, areas, number length, etc...

I've downloaded it and it isn't working!
----------------------------------------

[](#ive-downloaded-it-and-it-isnt-working)

Please see the [Requirements](#requirements) section in this document. You can also see the README-quickstart.md document for additional help getting started quickly.

How do I use *libphono*?
------------------------

[](#how-do-i-use-libphono)

Please see the class documentation in the phpdoc subdirectory for a description of how to use the class. There is also a quickstart file (README-quickstart.md) included in the repository to help you get started.

What countries / dial plans does *libphono* cover?
--------------------------------------------------

[](#what-countries--dial-plans-does-libphono-cover)

All countries which have publicly available information related to their dial plans. 235 countries are currently included.

Information missing?
--------------------

[](#information-missing)

Create an issue in the github repository, we will update as soon as possible!

Requirements
------------

[](#requirements)

1. PHP corresponding to the version listed in this project's `composer.json`,
2. PHP modules for MySQL or SQLite3 (to provide access to data),
3. and composer `require` in your composer.json

```
{
  "require": {
    "tinned-software/php-libphono": "~2.0.0"
  }
}
```

###  Health Score

29

—

LowBetter than 59% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 95.1% 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 ~120 days

Total

2

Last Release

3016d ago

Major Versions

1.0.0 → 2.0.02018-02-13

### Community

Maintainers

![](https://www.gravatar.com/avatar/a111010b401c90f8f027427ae29842be7004dec37582fe7b35ba5cb358a96b08?d=identicon)[tdashton](/maintainers/tdashton)

---

Top Contributors

[![tdashton](https://avatars.githubusercontent.com/u/820379?v=4)](https://github.com/tdashton "tdashton (58 commits)")[![gerhard-tinned](https://avatars.githubusercontent.com/u/1536065?v=4)](https://github.com/gerhard-tinned "gerhard-tinned (3 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/tinned-software-php-libphono/health.svg)

```
[![Health](https://phpackages.com/badges/tinned-software-php-libphono/health.svg)](https://phpackages.com/packages/tinned-software-php-libphono)
```

###  Alternatives

[webmozart/assert

Assertions to validate method input/output with nice error messages.

7.6k894.0M1.2k](/packages/webmozart-assert)[bensampo/laravel-enum

Simple, extensible and powerful enumeration implementation for Laravel.

2.0k15.9M104](/packages/bensampo-laravel-enum)[swaggest/json-schema

High definition PHP structures with JSON-schema based validation

48612.5M73](/packages/swaggest-json-schema)[stevebauman/purify

An HTML Purifier / Sanitizer for Laravel

5325.6M19](/packages/stevebauman-purify)[ashallendesign/laravel-config-validator

A package for validating your Laravel app's config.

217905.3k5](/packages/ashallendesign-laravel-config-validator)[crazybooot/base64-validation

Laravel validators for base64 encoded files

1341.9M8](/packages/crazybooot-base64-validation)

PHPackages © 2026

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