تبدیل کاراکتر فارسی به en

3 سال پیش توسط کمال مطرح شد
آفلاین
user-avatar
کمال ( 3121 تجربه )
3 سال پیش
تخصص : برنامه نویس ارشد وب

لینک کوتاه اشتراک گذاری

0

سلام
من میخوام کاربر هنگام ورود اگر اعداد فارسی تایپ کرد به انگلیسی داخل دیتابیس ذخیره بشه
داخل مدل User این کار رو میکنم

    public function setPasswordAttribute($value)
    {
        $this->attributes['password'] = $this->convert($value);
    }
    public function setPhoneAttribute($value)
    {
        $this->attributes['phone'] = $this->convert($value);
    }

    private function convert($string)
    {
        $eastern = ['۰','١','۲','۳','۴','۵','۶','۷','۸','۹'];
        $western = ['0','1','2','3','4','5','6','7','8','9'];

        return str_replace($eastern ,$western , $string);
    }

و همه تبدیل میشوند جز 1 که فارسی میمونه!
علتش چیه ؟

بهترین پاسخ
آفلاین
user-avatar
کمال
3 سال پیش

اینطوری درست شد

  $eastern = ["۰","۱","۲","۳","۴","۵","۶","۷","۸","۹"];
        $western = ["0","1","2","3","4","5","6","7","8","9"];
آفلاین
user-avatar
علی بیات ( 440099 تجربه )
3 سال پیش
تخصص : توسعه دهنده ارشد وب

لینک کوتاه اشتراک گذاری

0

آرایه eastern رو کامل اعداد فارسی بذارید. من تست کردم کار میکنه

آفلاین
user-avatar
کمال ( 3121 تجربه )
3 سال پیش
تخصص : برنامه نویس ارشد وب

لینک کوتاه اشتراک گذاری

0

کامل اعداد فارسی گذاشتم
توی اینجا قاطی نشون میده!

آفلاین
user-avatar
reza zare ( 1389 تجربه )
3 سال پیش
تخصص : برنامه نویس php

لینک کوتاه اشتراک گذاری

0

برای یک فارسی از این کاراکتر استفاده کن

۱

آفلاین
user-avatar
کمال ( 3121 تجربه )
3 سال پیش
تخصص : برنامه نویس ارشد وب

لینک کوتاه اشتراک گذاری

0

اینطوری درست شد

  $eastern = ["۰","۱","۲","۳","۴","۵","۶","۷","۸","۹"];
        $western = ["0","1","2","3","4","5","6","7","8","9"];
آفلاین
user-avatar
احسان اسدی ( 27455 تجربه )
3 سال پیش
تخصص : برنامه نویس Back-end

لینک کوتاه اشتراک گذاری

0
function faTOen($string) {
    return strtr($string, array('۰'=>'0', '۱'=>'1', '۲'=>'2', '۳'=>'3', '۴'=>'4', '۵'=>'5', '۶'=>'6', '۷'=>'7', '۸'=>'8', '۹'=>'9', '٠'=>'0', '١'=>'1', '٢'=>'2', '٣'=>'3', '٤'=>'4', '٥'=>'5', '٦'=>'6', '٧'=>'7', '٨'=>'8', '٩'=>'9'));
}
برای ارسال پاسخ لازم است، ابتدا وارد سایت شوید.