private function __construct(PhoneNumberUtil $phoneNumberUtil = null)
 {
     if ($phoneNumberUtil === null) {
         $this->phoneUtil = PhoneNumberUtil::getInstance();
     } else {
         $this->phoneUtil = $phoneNumberUtil;
     }
     $this->currentFilePrefix = dirname(__FILE__) . '/data/' . self::META_DATA_FILE_PREFIX;
 }
 private function __construct(MatcherAPIInterface $matcherAPI)
 {
     $this->matcherAPI = $matcherAPI;
     // TODO: Create ShortNumberInfo for a given map
     $this->countryCallingCodeToRegionCodeMap = CountryCodeToRegionCodeMap::$countryCodeToRegionCodeMap;
     $this->currentFilePrefix = dirname(__FILE__) . '/data/' . self::META_DATA_FILE_PREFIX;
     // Initialise PhoneNumberUtil to make sure regex's are setup correctly
     PhoneNumberUtil::getInstance();
 }
Exemplo n.º 3
0
 /**
  *
  * @param string $phoneNumber
  * @param string $regionCode
  */
 public function __construct($phoneNumber = '', $regionCode = 'US')
 {
     $this->_phoneUtil = PhoneNumberUtil::getInstance();
     $this->setRegionCode($regionCode);
     if (!empty($phoneNumber)) {
         $this->setPhoneNumber($phoneNumber);
     } else {
         $this->_numberProto = null;
     }
 }
 private static function initializePhoneUtilForTesting()
 {
     self::$bsNumber = new PhoneNumber();
     self::$bsNumber->setCountryCode(1)->setNationalNumber(2423651234);
     self::$bsMobile = new PhoneNumber();
     self::$bsMobile->setCountryCode(1)->setNationalNumber(2423570000);
     self::$internationalTollFree = new PhoneNumber();
     self::$internationalTollFree->setCountryCode(800)->setNationalNumber(12345678);
     self::$sgNumber = new PhoneNumber();
     self::$sgNumber->setCountryCode(65)->setNationalNumber(65218000);
     // A too-long and hence invalid US number.
     self::$usLongNumber = new PhoneNumber();
     self::$usLongNumber->setCountryCode(1)->setNationalNumber(65025300001);
     self::$usShortByOneNumber = new PhoneNumber();
     self::$usShortByOneNumber->setCountryCode(1)->setNationalNumber(650253000);
     self::$usTollFree = new PhoneNumber();
     self::$usTollFree->setCountryCode(1)->setNationalNumber(8002530000);
     self::$usNumber = new PhoneNumber();
     self::$usNumber->setCountryCode(1)->setNationalNumber(6502530000);
     self::$usLocalNumber = new PhoneNumber();
     self::$usLocalNumber->setCountryCode(1)->setNationalNumber(2530000);
     self::$nzNumber = new PhoneNumber();
     self::$nzNumber->setCountryCode(64)->setNationalNumber(33316005);
     self::$usPremium = new PhoneNumber();
     self::$usPremium->setCountryCode(1)->setNationalNumber(9002530000);
     self::$usSpoof = new PhoneNumber();
     self::$usSpoof->setCountryCode(1)->setNationalNumber(0);
     self::$usSpoofWithRawInput = new PhoneNumber();
     self::$usSpoofWithRawInput->setCountryCode(1)->setNationalNumber(0)->setRawInput("000-000-0000");
     self::$gbMobile = new PhoneNumber();
     self::$gbMobile->setCountryCode(44)->setNationalNumber(7912345678);
     self::$gbNumber = new PhoneNumber();
     self::$gbNumber->setCountryCode(44)->setNationalNumber(2070313000);
     self::$deShortNumber = new PhoneNumber();
     self::$deShortNumber->setCountryCode(49)->setNationalNumber(1234);
     self::$itMobile = new PhoneNumber();
     self::$itMobile->setCountryCode(39)->setNationalNumber(345678901);
     self::$itNumber = new PhoneNumber();
     self::$itNumber->setCountryCode(39)->setNationalNumber(236618300)->setItalianLeadingZero(true);
     self::$auNumber = new PhoneNumber();
     self::$auNumber->setCountryCode(61)->setNationalNumber(236618300);
     self::$arMobile = new PhoneNumber();
     self::$arMobile->setCountryCode(54)->setNationalNumber(91187654321);
     self::$arNumber = new PhoneNumber();
     self::$arNumber->setCountryCode(54)->setNationalNumber(1187654321);
     self::$mxMobile1 = new PhoneNumber();
     self::$mxMobile1->setCountryCode(52)->setNationalNumber(12345678900);
     self::$mxNumber1 = new PhoneNumber();
     self::$mxNumber1->setCountryCode(52)->setNationalNumber(3312345678);
     self::$mxMobile2 = new PhoneNumber();
     self::$mxMobile2->setCountryCode(52)->setNationalNumber(15512345678);
     self::$mxNumber2 = new PhoneNumber();
     self::$mxNumber2->setCountryCode(52)->setNationalNumber(8211234567);
     // Note that this is the same as the example number for DE in the metadata.
     self::$deNumber = new PhoneNumber();
     self::$deNumber->setCountryCode(49)->setNationalNumber(30123456);
     self::$jpStarNumber = new PhoneNumber();
     self::$jpStarNumber->setCountryCode(81)->setNationalNumber(2345);
     PhoneNumberUtil::resetInstance();
     return PhoneNumberUtil::getInstance(self::TEST_META_DATA_FILE_PREFIX, CountryCodeToRegionCodeMapForTesting::$countryCodeToRegionCodeMap);
 }
Exemplo n.º 5
0
<?php

namespace libphonenumber;

require_once dirname(__FILE__) . '/PhoneNumberUtil.php';
require_once dirname(__FILE__) . '/CountryCodeToRegionCodeMap.php';
require_once dirname(__FILE__) . '/PhoneNumber.php';
require_once dirname(__FILE__) . '/PhoneMetadata.php';
require_once dirname(__FILE__) . '/PhoneNumberDesc.php';
require_once dirname(__FILE__) . '/NumberFormat.php';
require_once dirname(__FILE__) . '/Matcher.php';
require_once dirname(__FILE__) . '/CountryCodeSource.php';
require_once dirname(__FILE__) . '/PhoneNumberType.php';
require_once dirname(__FILE__) . '/PhoneNumberFormat.php';
$swissNumberStr = "044 668 18 00";
$phoneUtil = PhoneNumberUtil::getInstance();
try {
    $swissNumberProto = $phoneUtil->parse($swissNumberStr, "CH");
    var_dump($swissNumberProto);
} catch (NumberParseException $e) {
    echo $e;
}
$isValid = $phoneUtil->isValidNumber($swissNumberProto);
//return true
var_dump($isValid);
// Produces "+41446681800"
echo $phoneUtil->format($swissNumberProto, PhoneNumberFormat::E164) . PHP_EOL;