Library for parsing, formatting, storing and validating international phone numbers using Kohana
PHP
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
classes
config
vendor
.gitignore
.gitmodules
LICENSE
README.md
init.php

README.md

libphonenumber for Kohana

Requirements

You must install the PHP extension intl and enable it in php.ini

Installation

Place config file in your modules directory.

Copy MODPATH.menu/config/phonenumber.php into APPPATH/config/phonenumber.php and customize.

Activate the module in bootstrap.php.

<?php
Kohana::modules(array(
	...
	'phonenumber' => MODPATH.'phonenumber',
));

We create an instance of the class

$pninst = PhoneNumber::instance('415 599 2671');

We can override the default configuration by passing a second parameter:

$config = array(
	'country'	=> 'PA',
	'language'	=> 'es',
	'region'	=> 'PA'
);

$pninst = PhoneNumber::instance('415 599 2671', $config);

PhoneNumber Object

echo $pninst->getPNObject()->getCountryCode();
// Output: 1
	
echo $pninst->getPNObject()->getNationalNumber();
// Output: 4155992671

echo $pninst->getPNObject()->isItalianLeadingZero();
// Output: FALSE

echo $pninst->getPNObject()->getRawInput();
// Output: 415 599 2671

echo $pninst->getPNObject()->getCountryCodeSource();
// Output: 3

echo $pninst->getCountryCodeSource();
// Output: FROM_DEFAULT_COUNTRY

Validation Results

echo $pninst->isPossibleNumber();
// Output: TRUE

echo $pninst->isValidNumber();
// Output: TRUE

echo $pninst->isValidNumberForRegion();
// Output: TRUE

echo $pninst->getRegionCodeForNumber();
// Output: US

echo $pninst->getNumberType();
// Output: FIXED_LINE_OR_MOBILE

Formatting

echo $pninst->formatE164();
// Output: +14155992671

echo $pninst->formatInOriginalFormat();
// Output: (415) 599-2671

echo $pninst->formatNational();
// Output: (415) 599-2671

echo $pninst->formatInternational();
// Output: +1 415-599-2671

echo $pninst->formatRFC3966();
// Output: tel:+1-415-599-2671

echo $pninst->formatOutOfCountryCallingNumber('US');
// Output: 1 (415) 599-2671

echo $pninst->formatOutOfCountryCallingNumber('CH');
// Output: 00 1 415-599-2671

echo $pninst->formatOutOfCountryCallingNumber('FR');
// Output: 00 1 415-599-2671

ShortNumberInfo

echo $pninst->isPossibleShortNumber();
// Output: FALSE

echo $pninst->isValidShortNumber();
// Output: FALSE

echo $pninst->isPossibleShortNumberForRegion();
// Output: FALSE

echo $pninst->isValidShortNumberForRegion();
// Output: FALSE

echo $pninst->getExpectedCost();
// Output: UNKNOWN_COST

echo $pninst->getExpectedCostForRegion();
// Output: UNKNOWN_COST

echo $pninst->isEmergencyNumber();
// Output: FALSE

echo $pninst->connectsToEmergencyNumber();
// Output: FALSE

Example Numbers

echo $pninst->getExampleNumber();
// Output: +12015555555

echo $pninst->getExampleNumberForType();
// Output: +12015555555

echo $pninst->getExampleShortNumber();
// Output: 911

PhoneNumber Geocoder

echo $pninst->getGeolocation();
// Output: California

PhoneNumber Carrier

echo $pninst->getCarrier();
// Output: 

PhoneNumber TimeZones

echo $pninst->getTimeZones();
// Output: America/Los_Angeles

ABOUT AND LICENSE

Copyright (c) 2015, Soft Media Development. All right reserved. Website: www.smd.com.pa

This project is using the classes from https://github.com/giggsey/libphonenumber-for-php created by giggsey.

This project is made under BSD license. See LICENSE file for more information.