راکت

اعمال یک تابع دلخواه روی request در کنترلر لاراول

1 پاسخ

سلام دوستان من یه تابع دارم برای تبدیل اعداد فارسی به انگلیسی که اینجوریه (چون اعداد فارسی باشه مشکل ایجاد میشه)

public function convertPersianToEnglish($string)
{
    $replace_pairs = array(
        '۰' => '0', '۱' => '1', '۲' => '2', '۳' => '3', '۴' => '4', '۵' => '5', '۶' => '6', '۷' => '7', '۸' => '8', '۹' => '9',
        '٠' => '0', '١' => '1', '٢' => '2', '٣' => '3', '٤' => '4', '٥' => '5', '٦' => '6', '٧' => '7', '٨' => '8', '٩' => '9'
    );
    return strtr($string, $replace_pairs);
}

این تابع رو توی فایل Controller گذاشتم و هرجا خواستم صداش میزنم مثلا اینجوری

public function sendCode(Request $request)
{
    ActiveCode::sendCode($this->convertPersianToEnglish($request->phone_number));
}

میخواستم ببینم که امکانش هست به صورت پیشفرض این تابع روی ریکوئست اعمال بشه و من لازم نباشه همه جا اینو صدا بزنم؟

ثبت پرسش جدید

پاسخ‌ها

1
حسین شیری نژاد
حسین شیری نژاد
@hosseinshirinegad98

تخصص: programmer

سلام
توی هر کلاس ریکوئست متدی به نامprepareValidationوجود داره که درست قبل از اعتبار سنجی ریکوئست اجرا میشه این تابع تبدیل عدد بهen رو برای هر ریکوئست که تبدیل عددبه انگلیسی نیاز داره رو داخل متد prepareValidation قرار بدین
روش استفاده ازش هم توی مستندات لارال هست سرچ کنید تو دسترسه

شاید پاسخ شما همین‌جا باشد

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام