Download the PHP package devsarfo/laraphone without Composer
On this page you can find all versions of the php package devsarfo/laraphone. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download devsarfo/laraphone
More information about devsarfo/laraphone
Files in devsarfo/laraphone
Package laraphone
Short Description Laravel Phone Number Package based on the PHP port of libphonenumber by Google
License MIT
Homepage https://github.com/devsarfo/laraphone
Informations about the package laraphone
LaraPhone
Laravel Phone Number Package based on the libphonenumber for PHP (Lite). It is a simple Laravel package for validating, formatting, and parsing phone numbers based on the PHP port of Google’s libphonenumber library, providing robust support for international phone number handling.
Installation
You can install the package via composer using the following command. The command will install the latest applicable version of the package.
You can publish the config file with:
Optionally, you can publish the translations with :
Usage
Use the phone
keyword in your validation rules array or use the DevSarfo\LaraPhone\Rules\PhoneNumberRule
rule class to define the rule in an expressive way.
To put constraints on the allowed originating countries, you can explicitly specify the allowed country codes.
You can pass the country code from another field in the request. For example, to require a phone number to match the user's country.
The country codes should be ISO 3166-1 alpha-2 compliant.
Validation Message
We provide validation for various cases out of the box. However, to enable the custom phone validation message, please add the following line to the validation.php
language file in your resources/lang/{language}/
directory (e.g., resources/lang/en/validation.php
):
PhoneNumber Utility class
You can use the DevSarfo\LaraPhone\Models\PhoneNumber
class to handle various phone number operations, such as formatting, validating, and manipulating phone numbers. It provides an easy-to-use interface for working with phone numbers in different formats, and can be safely referenced in views or when saving to the database.
Alternatively you can use the phone()
function found in the Helper.php
. It returns a DevSarfo\LaraPhone\Models\PhoneNumber
instance or the formatted string if $format
was provided:
Formatting
A PhoneNumber can be formatted in various ways:
Database
Store phone numbers in the E.164 format in your database. This format globally uniquely identifies a phone number, ensuring consistency and simplifying validation.
For example:
- User input:
0244123456
(GH number) - Database storage:
+233244123456
Why E.164 Format?
- Consistency: E.164 format uniquely identifies a phone number globally.
- Flexibility: You can format the number for display purposes (e.g., national or international formats).
Example Workflow:
- User Input:
0244123456
- Format to E.164:
+233244123456
- Save in Database: Store as
+233244123456
- Display: Format it as needed, e.g.,
0244 123 456
for Ghana.
This ensures unique, globally recognizable phone numbers that can be displayed differently based on user needs.
Testing
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
Credits
- Bernard Sarfo Twumasi
- Joshua Gigg - libphonenumber for PHP (Lite)
- Google - libphonenumber
- All Contributors
License
The MIT License (MIT). Please see License File for more information.
All versions of laraphone with dependencies
giggsey/libphonenumber-for-php-lite Version *
illuminate/contracts Version ^10.0||^11.0||^12.0
spatie/laravel-package-tools Version ^1.16