Downloads
Stars
Version
The Laravel Persian Validation package offers comprehensive validation for the Persian language, including validation for Persian alphabets, numbers, and other Persian-specific elements. This package allows developers to ensure that their Persian language input data meets the necessary validation criteria, enhancing the reliability and accuracy of their applications. With Laravel Persian Validation, developers can easily incorporate Persian language validation into their Laravel projects, providing a more inclusive and user-friendly experience for Persian-speaking users.
Via Composer
$ composer require iamfarhad/validation
This package is designed to automatically register itself without requiring any additional configuration.
If you would like to customize the translations for the Laravel Persian Validation package, you can use the following command to publish them into your project's resources/lang directory:
php artisan vendor:publish --provider="Iamfarhad\Validation\ValidationRulesServiceProvider" --tag="translations"
If you are using Laravel 9.x or later, the translations will be published to the /lang directory instead. Once the translations are published, you can modify them as needed to suit your project's requirements.
php artisan vendor:publish --provider="Iamfarhad\Validation\ValidationRulesServiceProvider"
You can run the tests with:
composer test
You can access to validation rules by passing the rules key according blew following table:
Rules | Descriptions |
---|---|
new PersianAlpha() | Persian alphabet |
new PersianNumber() | Persian numbers |
new Mobile() | Iran mobile numbers |
new Sheba() | Iran Sheba numbers |
new NationalCode() | Iran melli code |
new IsNotPersian() | Doesn't accept Persian alphabet and numbers |
new Mobile() | Iran mobile numbers |
new Phone() | Iran phone numbers |
new PhoneArea() | Iran phone numbers with area code |
new CardNumber() | Payment card numbers |
new Address() | Accept Persian, English and ... alphabet, Persian and English numbers and some special characters |
new PostalCode() | Iran postal code |
new Username() | Username format |
new Base64() | Base64 format |
Accept Persian language alphabet according to standard Persian, this is the way you can use this validation rule:
Validator::make(
['name' => 'فارسی'],
['name' => [new PersianAlpha()]
);
Validate Persian standard numbers (۰۱۲۳۴۵۶۷۸۹):
Validator::make(
['num' => '۰۱۲۳۴۵۶۷۸۹'],
['num' => [new PersianNumber()]
);
Validate Iran mobile phones (irancel, rightel, hamrah-e-aval, ...):
Validator::make(
['mob' => '09127777777'],
['mob' => [new Mobile()]
);
Validate Iran bank sheba numbers:
Validator::make(
['sheba_number' => 'IR062960000000100324200001'],
['sheba_number' => [new Sheba()]
);
Validate Iran national code (melli-code):
Validator::make(
['codeMelli' => '3240175800'],
['codeMelli' => [new NationalCode()]
);
Validate Iran payment card numbers:
Validator::make(
['card' => '6274129005473742'],
['card' => [new CardNumber()]
);
Validate Iran postal code:
Validator::make(
['postal' => '16719735744'],
['postal' => [new PostalCode()]
);
// in a `FormRequest`
public function rules()
{
return [
'NationalCode' => ['required', new NationalCode()],
];
}
This component is developed by the following person(s)
Farhad Zand |
Great! It's always helpful to have more contributors to a package. Here are a few ways you can contribute to the package completion:
Remember that contributing to open-source projects like this package is a collaborative effort, and every little bit helps. Thank you for considering contributing!
The Laravel persian validation Module is open-sourced software licensed under the MIT license