elbgoods / laravel-country-rule
Laravel validation rules for ISO-3166 country formats.
Installs: 4 803
Dependents: 1
Suggesters: 0
Security: 0
Stars: 7
Watchers: 5
Forks: 1
Open Issues: 0
Requires
- php: ^7.4 || ^8.0
- illuminate/contracts: ^6.0 || ^7.0 || ^8.0
- illuminate/support: ^6.0 || ^7.0 || ^8.0
- league/iso3166: ^2.1 || ^3.0
Requires (Dev)
- orchestra/testbench: ^4.0 || ^5.0 || ^6.0
- phpunit/phpunit: ^8.0 || ^9.0
README
This package provides multiple validation rules to validate countries according to ISO-3166.
Installation
At first you have to add this package to your composer.json
:
composer require elbgoods/laravel-country-rule
After this you can publish the package translation files to adjust the error messages:
php artisan vendor:publish --provider="Elbgoods\CountryRule\CountryRuleServiceProvider" --tag=lang
Usage
General
This package provides a basic CountryRule
which you can use. All more specific rules only extend this rule with a predefined format
.
use Elbgoods\CountryRule\Rules\CountryRule; use League\ISO3166\ISO3166; $rule = new CountryRule(ISO3166::KEY_ALPHA2);
By default the rule requires a value - if you want to accept null
values you can use the nullable()
method or set the $required
parameter to false
.
use Elbgoods\CountryRule\Rules\CountryRule; use League\ISO3166\ISO3166; $rule = new CountryRule(ISO3166::KEY_ALPHA2, false); $rule->nullable();
Alpha2
use Elbgoods\CountryRule\Rules\CountryAlpha2Rule; $rule = new CountryAlpha2Rule();
Alpha3
use Elbgoods\CountryRule\Rules\CountryAlpha3Rule; $rule = new CountryAlpha3Rule();
Name
use Elbgoods\CountryRule\Rules\CountryNameRule; $rule = new CountryNameRule();
Numeric
use Elbgoods\CountryRule\Rules\CountryNumericRule; $rule = new CountryNumericRule();
Changelog
Please see CHANGELOG for more information on what has changed recently.
Versioning
This package follows semantic versioning.
Contributing
Please see CONTRIBUTING for details.
Security
Please see SECURITY for details.
Credits
License
The MIT License (MIT). Please see License File for more information.
Treeware
You're free to use this package, but if it makes it to your production environment we would highly appreciate you buying or planting the world a tree.
It’s now common knowledge that one of the best tools to tackle the climate crisis and keep our temperatures from rising above 1.5C is to plant trees. If you contribute to my forest you’ll be creating employment for local families and restoring wildlife habitats.
You can buy trees at offset.earth/treeware
Read more about Treeware at https://treeware.earth