فرید عقیلی
فرید عقیلی
خواندن ۲ دقیقه·۵ سال پیش

ساده‌ترین روش تبدیل حروف عربی به فارسی در لاراول

تو این مطلب می‌خوام ساده‌ترین روشی که برای تبدیل حروف و اعداد عربی (و انگلیسی) به فارسی در لاراول وجود داره رو بهتون معرفی کنم.

برخلاف خیلی از پکیج‌ها و راهکارها که این تبدیل رو با استفاده از Middleware انجام می‌دن، که نتیجش می‌شه اینکه در هر Request این تبدیل‌ها باید انجام بشه؛ پکیجی که اینجا بهتون معرفی می‌کنم این تبدیل رو در زمان ایجاد و آپدیت Model ها اعمال می‌کنه، در نتیجه در استفاده‌های بعدی از اون Model، نیازی به تبدیل مجدد نیست.

در لینک زیر می‌تونید پکیج رو مشاهده کنید:
https://github.com/pishran/laravel-persian-string
توضیحات به فارسی نوشته شده و طرز کار پکیج هم واقعا ساده‌ست، همچنین امکان تغییر در تنظیمات مربوط به تبدیل حروف هم وجود دارد.

اول پکیج رو با Composer به اپلیکیشنمون اضافه می‌کنیم:

composer require pishran/laravel-persian-string

بعد Trait پکیج رو به Model مد نظرمون اضافه می‌کنیم:

اضافه کردن Trait به Model
اضافه کردن Trait به Model

و در آخر هر ویژگی (Attribute) که می‌خوایم در زمان ایجاد یا ویرایش مدل (Saving) تبدیل روش اعمال بشه رو به ویژگی persianStrings در کلاس مدلمون اضافه می‌کنیم:

اضافه کردن ستون‌هایی که باید تبدیل شوند
اضافه کردن ستون‌هایی که باید تبدیل شوند

در مثال بالا، یک مدل به نام Post داریم که در دیتابیس دارای ستون‌های title، summary و content برای ذخیره عنوان، چکیده و محتوای پست‌های بلاگ اپلیکیشنمون هست و همونطور که می‌بینید صرفا با اضافه کردن یک Trait و یک Property به کلاسمون، در زمان ایجاد پست جدید یا ویرایش پست، تبدیل حروف و اعداد عربی و انگلیسی به فارسی روی ستون‌های مشخص شده انجام می‌شه. کد کامل کلاس:

کد کامل
کد کامل

این پکیج همچنین امکان تنظیم نوع تبدیلات رو هم داره و می‌شه به راحتی مشخص کرد که چه کاراکتری به چه کاراکتری تبدیل بشه؛ برای اینکار کافیه فایل تنظیمات پکیج رو با دستور زیر publish کنید:

php artisan vendor:publish --provider=&quotPishran\LaravelPersianString\ServiceProvider&quot

بعد از اجرای دستور بالا، به فایل جدید config/persian-string.php مراجعه کنید و تبدیلات مد نظرتون رو تنظیم کنید.

امیدوارم از این مطلب لذت برده باشید و این پکیج رو تو پروژه‌هاتون استفاده کنید تا متون فارسی رو با اعداد و کاراکترهای صحیح و استاندارد فارسی ببینیم.

لاراولبرنامه نویسیمهندسی نرم افزار
طراح و توسعه دهنده وب و اپلیکیشن
شاید از این پست‌ها خوشتان بیاید