2012-02-28 16 views
3

私はlibphonenumberを使用して数字をフレンドリーなローカル電話番号に変換することを検討していますlibphonenumber php usage

例: 19311234567が入力された場合、(931)123 4567

私はここでlibphonenumberのPHPバージョンを見つけました:https://github.com/davideme/libphonenumber-for-PHPしかし、私は後に何を得るためにそれを使用するのか分かりません。

誰もが、私は電話番号を使用すると、次のコードを使用して書式設定することができ、実際の実装では

+2

あなたは今までこのライブラリは右の仕事を得るのですか?私は自分自身に苦労しています。 – ackerchez

+1

参考:このライブラリは一部の国をサポートしていません。http://phpinterviewquestions.in/blog/ionic/googles-libphonenumber-library-supported-country-list –

答えて

2

を変換し得るために、それに加える必要があると呼んでいるものを知っているのであれば、私は疑問に思って。

$phoneNumberUtil = PhoneNumberUtil::getInstance(); 
$exampleNumber = new PhoneNumber(); 
$exampleNumber->setCountryCode(1)->setNationalNumber(9311234567); 
var_dump($phoneNumberUtil->format($exampleNumber, PhoneNumberFormat::INTERNATIONAL)); 
var_dump($phoneNumberUtil->format($exampleNumber, PhoneNumberFormat::NATIONAL)); 
var_dump($phoneNumberUtil->format($exampleNumber, PhoneNumberFormat::RFC3966)); 

出力:

string(15) "+1 931 123 4567" 
string(12) "931 123 4567" 
string(15) "+1-931-123-4567" 

rawInputとフリーフォーマットがまだPHPのバージョンで実装されていませんが、APIは、JAVA 1のようになります。

+0

ご返信ありがとうございます。 私はまだ難しいですこれは、私はそれがオブジェクトベースのものではなく、フラットなPHPセットアップで動作するようにしようとしているという事実によると思いますか? phonenumberutil、regioncode、phonenumber、countrycodetoregioncodemapを含めた後にコードをコピーしたときに、「オブジェクトコンテキストではないときに$ thisを使用する」 完全な実例があるとしたら、テストを見ましたか?スイートではありませんが、どちらもうまく動作していないようです。「PHPUnti_Framework_Testcase not found」というエラーが返されます。 だから私はちょっと困惑しています。あなたの助けが大変ありがとうございます。 –

+0

テストを実行するにはPHPUnitをセットアップする必要があります。テストケースの1つを私に送ることができますか?それをデバッグしますか? –

+0

'<? 名前空間com \ google \ i18n \ phonenumbers; require_once '../PhoneNumberUtil.php'; require_once '../RegionCode.php'; require_once '../PhoneNumber.php'; require_once '../CountryCodeToRegionCodeMapForTesting.php'; $ exampleNumber = new PhoneNumber(); $ exampleNumber-> setCountryCode(1) - > setNationalNumber(9311234567); var_dump($ this-> phoneUtil-> format($ exampleNumber、PhoneNumberFormat :: INTERNATIONAL)); var_dump($ this-> phoneUtil-> format($ exampleNumber、PhoneNumberFormat :: NATIONAL)); var_dump($ this-> phoneUtil-> format($ exampleNumber、PhoneNumberFormat :: RFC3966)); ?> –

1

実際にはlibphonenumberのラッパーであるAPIサービスを開発しました。

あなたは電話番号の国立フォーマット取得することができます。完全なヘルプについて

curl http://phonenumber.ones-app.com/national-format?number=19311234567 

(931) 123-4567 

を:http://blog.ones-app.com/ones-phone-number-api/