mdaliyan / farsi-request
A (Laravel Request Transformer) that replaces Arabic characters with Farsi characters, and auto-converts numbers in parameters that you want.
Requires
- php: >=5.5.0
- illuminate/support: >=5.4.0
This package is auto-updated.
Last update: 2024-12-26 18:32:07 UTC
README
Farsi Request replaces arabic characters like ي ك ة ٤ ٥ ٦ with Farsi characters like ی ک ه ۴ ۵ ۶ in all your requests parameters automatically.
If you are building a farsi website you might end up having some users who use Arabic keyboard. These users may cause problems to your content or experience some confusion while searching among your content.
Tested
farsi-request
is tested on laravel 5.x && 6.x
Features
-
Replaces Arabic characters with farsi standard characters
-
Automatically Converts Farsi or English Numbers to each other in your desired request parameters to one another. For example:
- Product names, like R2D2 should never have farsi numbers, right?
- user's phone number
Install
$ composer require mdaliyan/farsi-request
Usage
1. Auto-Replace arabic characters
Add this middleware to your kernel file app/Http/Kernel.php
protected $middleware = [ ... \Mdaliyan\FarsiRequest\Middleware\ReplaceArabicCharacters::class, ];
2. Auto-Replace numbers in request parameters
Add this trait and two private properties to your Request Class. Then add the parameters that should have farsi or english numbers to the desired property.
use Mdaliyan\FarsiRequest\Traits\ReplaceNumbers; class SomeRequest extends FormRequest { use ReplaceNumbers; private $mustHaveEnglishNumbers = ['id','email','phone_number']; private $mustHaveFarsiNumbers = ['post_content','author_name']; /** * Determine if the user is authorized to make this request. * @return bool */ public function authorize() { return true; } ...
Note: this feature ignores numbers inside HTML tags:
This line with the numbers 889 and an image: <img src="/media/media2.jpg"> <!-- will be converted to: --> This line with the numbers ۸۸۹ and an image: <img src="/media/media2.jpg">