Download the PHP package saman9074/iranian-validation-suite without Composer
On this page you can find all versions of the php package saman9074/iranian-validation-suite. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package iranian-validation-suite
مجموعه اعتبارسنجی ایرانی برای لاراول (Iranian Validation Suite for Laravel)
این پکیج لاراول، مجموعهای از قوانین اعتبارسنجی آفلاین برای دادههای رایج ایرانی و همچنین ابزارهای کمکی مرتبط را فراهم میکند. هدف اصلی این پکیج، سادهسازی فرآیند اعتبارسنجی دادههای ایرانی در پروژههای لاراول و کمک به توسعهدهندگان برای اطمینان از صحت دادههای ورودی است.
فاز فعلی: اعتبارسنجی آفلاین
در حال حاضر، این پکیج بر روی ارائه قوانین اعتبارسنجی آفلاین تمرکز دارد که نیازی به اتصال به سرویسهای آنلاین ندارند.
ویژگیهای اصلی (فاز اول)
- مجموعهای از قوانین اعتبارسنجی آماده برای:
- کد ملی ایران (
iranian_national_id
) - شماره کارت بانکی (
iranian_bank_card
) - بر اساس الگوریتم لان - شماره شبا (
iranian_sheba
) - بر اساس استاندارد IBAN و Mod 97-10 - کد پستی ۱۰ رقمی ایران (
iranian_postal_code
) - شماره موبایل ایران (
iranian_mobile_number
) - با بررسی پیششمارههای معتبر
- کد ملی ایران (
- پیامهای خطای قابل ترجمه (فارسی و انگلیسی به صورت پیشفرض).
- یک Facade کمکی (
IranianValidator
) برای اعتبارسنجی مستقیم مقادیر در کد. - نصب و راهاندازی آسان با استفاده از Composer و قابلیت auto-discovery لاراول.
- سازگار با لاراول ۱۰ و ۱۱ و ۱۲ (نیازمند PHP 8.2 به بالا).
ویژگیهای اصلی (فاز دوم)
- به زودی در فاز دوم پروژه با اتصال به وب سرویس های شرکت های معتبر امکان استعلام های مختلف به بسته اضافه می گردد.
- از جمله میتوان به سرویس های زیر اشاره نمود:
- استعلام کد ملی و شماره همراه (سامانه شاهکار)
- استعلام شماره کارت، تاریخ تولد و کد ملی
- استعلام کد ملی و شماره حساب یا شبا
- انطباق ویدئو و تصویر کارت ملی
- و....
- از جمله میتوان به سرویس های زیر اشاره نمود:
نصب
روش اول (در حال حاضر به علت تکمیل نبودن و عدم انتشار استفاده از این روش امکان پذیر نیست لطفا از روش دوم استفاده کنید) برای نصب پکیج از طریق Composer، دستور زیر را اجرا کنید:
روش دوم اگر در حال حاضر امکان استفاده از روش اول وجود ندارد یا می خواهید در توسعه این بسته کمک نمایید. لطفا از این روش برای نصب استفاده نمایید.
در ابتدا کد زیر را در فایل composer.json قرار دهید:
همچنین در قسمت require-dev در فایل composer.json خط زیر را اضافه نمایید.
سپس دستور زیر را در محیط ترمینال وارد نمایید.
این پکیج از قابلیت auto-discovery لاراول پشتیبانی میکند، بنابراین Service Provider و Facade ها به طور خودکار ثبت میشوند.
راهاندازی
۱. انتشار فایلهای زبان (اختیاری):
اگر میخواهید پیامهای پیشفرض اعتبارسنجی را سفارشی کنید، میتوانید فایلهای زبان پکیج را منتشر کنید:
فایلهای زبان در مسیر resources/lang/vendor/iranian-validation-suite (یا lang/vendor/iranian-validation-suite در نسخههای جدیدتر لاراول) در پروژه شما کپی خواهند شد.
۲. انتشار فایل پیکربندی (اختیاری برای فاز اول):
فایل پیکربندی این پکیج (iranian-validation-suite.php) در حال حاضر بیشتر برای تنظیمات مربوط به فاز دوم (خدمات KYC آنلاین) کاربرد دارد. با این حال، اگر میخواهید آن را منتشر کنید:
فایل پیکربندی در مسیر config/iranian-validation-suite.php در پروژه شما کپی خواهد شد.
نحوه استفاده
استفاده از قوانین اعتبارسنجی در Validator لاراول
شما میتوانید از این قوانین اعتبارسنجی مانند سایر قوانین داخلی لاراول در آرایه $rules کنترلرها یا Form Request های خود استفاده کنید:
استفاده از Facade برای اعتبارسنجی مستقیم
پکیج یک Facade به نام IranianValidator ارائه میدهد که میتوانید از آن برای بررسی مستقیم اعتبار یک مقدار استفاده کنید:
لیست قوانین اعتبارسنجی آفلاین
- iranian_national_id:
- اعتبارسنجی کد ملی ۱۰ رقمی ایران.
- iranian_bank_card:
- اعتبارسنجی شماره کارت بانکی ۱۶ رقمی ایران (الگوریتم لان).
- iranian_sheba:
- اعتبارسنجی شماره شبا ۲۴ رقمی (بدون IR) یا ۲۶ کاراکتری (با IR) ایران.
- iranian_postal_code:
- اعتبارسنجی کد پستی ۱۰ رقمی ایران (با یا بدون خط تیره).
- کدهای تماماً صفر، تماماً یکسان، 1234567890 و 9876543210 نامعتبر در نظر گرفته میشوند.
- اعتبارسنجی کد پستی ۱۰ رقمی ایران (با یا بدون خط تیره).
- iranian_mobile_number:
- اعتبارسنجی شماره موبایل ایران (۱۱ رقمی با پیششماره 09 یا ۱۰ رقمی با پیششماره 9). پیششمارههای رایج اپراتورها بررسی میشوند.
بومیسازی (Localization)
پیامهای خطا به طور پیشفرض برای زبانهای فارسی (fa) و انگلیسی (en) ارائه شدهاند. شما میتوانید با انتشار فایلهای زبان (همانطور که در بخش راهاندازی توضیح داده شد) این پیامها را ویرایش کرده یا زبانهای دیگری را اضافه کنید.
مشارکت
از مشارکت شما در توسعه این پکیج استقبال میگردد. جهت همکاری لطفا به آدرس ایمیل [email protected] پیام خود را ارسال کنید.