Lawrence Cooke
Lawrence Cooke

Reputation: 1607

libphonenumber for php

I am using https://github.com/davideme/libphonenumber-for-PHP for formatting phonenumbers

I am having issue with 1800 numbers

$formatnumber = "1800123456"
$country = "AU";    

$phoneUtil = PhoneNumberUtil::getInstance();

try {
    $NumberProto = $phoneUtil->parse( $formatnumber , $country );
} catch ( NumberParseException $e ) {
    echo $e;
}

$formattedNumber =  $phoneUtil->format( $NumberProto, PhoneNumberFormat::NATIONAL );

What I am expecting to get back from $formattedNumber is "1800 123456"

What I get back is an unformatted number "1800123456"

If there something I need to do doing to get it to format correctly?

Upvotes: 1

Views: 6312

Answers (1)

giggsey
giggsey

Reputation: 933

It works for me with pretty much your code:

<?php
require __DIR__ . '/vendor/autoload.php';


$formatnumber = "1800123456";
$country = "AU";

$phoneUtil = \libphonenumber\PhoneNumberUtil::getInstance();

try {
    $NumberProto = $phoneUtil->parse($formatnumber, $country);
} catch (NumberParseException $e) {
    echo $e;
}

$formattedNumber = $phoneUtil->format($NumberProto, \libphonenumber\PhoneNumberFormat::NATIONAL);

echo $formattedNumber;

Response:

1800 123 456

I am using my version of libphonenumber-for-php though: https://github.com/giggsey/libphonenumber-for-php

Upvotes: 4

Related Questions