giggsey/libphonenumber-for-php-lite
Lite PHP port of Google’s libphonenumber: parse, validate, format, and store international phone numbers. Includes core PhoneNumberUtils only (no geolocation/carrier/short number info). Requires PHP 8.1+ and mbstring; install via Composer.
+1 (123) 456-7890 from user input like 123-456-7890).044 668 18 00 for Switzerland) for invoices, customer support, or multilingual apps.+44 20 7946 0958 vs. 020 7946 0958 for UK numbers) by leveraging Google’s battle-tested library.libphonenumber-for-php package).Adopt if:
Look elsewhere if:
libphonenumber-for-php package).libphonenumber-for-js).mbstring extension support.*"This package lets us handle phone numbers globally—like Google does—without building or maintaining custom parsing logic. For example:
123-456-7890 → +1 (123) 456-7890 for US users, or 044 668 18 00 for Swiss users.123 as a UK phone number) using Google’s validated rules.*"This is a drop-in PHP library that replaces ad-hoc phone number logic with Google’s libphonenumber (same rules as Android/iOS). Key benefits:
isValidNumber() catches malformed inputs (e.g., +44 123 fails for UK).getNumberType()).mbstring.
Trade-offs:use libphonenumber\PhoneNumberUtil;
$util = PhoneNumberUtil::getInstance();
$number = $util->parse('+44 20 7946 0958', 'GB');
$isValid = $util->isValidNumber($number); // true
$formatted = $util->format($number, PhoneNumberFormat::NATIONAL); // '020 7946 0958'
```*
*Next steps*: Spike integration with our auth flow and validate coverage for top 5 user regions."*
How can I help you explore Laravel packages today?