-
January 12th, 2017, 21:21
#1
مشکل زبان فارسی در اسکریپت
سلام
میخوام یه اسکریپت php رو فارسی کنم ولی با زبان فارسی مشکل داره
اسکریپت رو با زبان اصلی نصب کردم و مقادیری که در تنظیمات به صورت فارسی وارد میکنم رو قبول نمیکنه. مثلا در تنظیمات در یک فیلد مقداری فارسی رو تایپ میکنم پیام میده که فیلد خالی هست
مشکل میتونه از یونیکد باشه؟
یونیکد همه فایل های php رو به utf8 تغییر یدم درست میشه؟
-
-
January 12th, 2017 21:21
# ADS
-
January 12th, 2017, 21:54
#2
عضو جدید
پاسخ : مشکل زبان فارسی در اسکریپت

نوشته اصلی توسط
m0rt3za
سلام
میخوام یه اسکریپت php رو فارسی کنم ولی با زبان فارسی مشکل داره
اسکریپت رو با زبان اصلی نصب کردم و مقادیری که در تنظیمات به صورت فارسی وارد میکنم رو قبول نمیکنه. مثلا در تنظیمات در یک فیلد مقداری فارسی رو تایپ میکنم پیام میده که فیلد خالی هست
مشکل میتونه از یونیکد باشه؟
یونیکد همه فایل های php رو به utf8 تغییر یدم درست میشه؟
اگه اسکریپتی که استفاده می کنید از دیتابیس استفاده میکنه، دقت کنید که جداول دیتابیس با انکودینگ utf8 ساخته شده باشن.
همچنین برخی از توابع کار با رشته ها در php، برای اینکه از زبان فارسی پیشتیبانی کنن، باید با توابع دیگه ای جایگزین شن، برای مثال تابع strlen که طول رشته رو محاسبه می کنه، برای اینکه طول رشته فارسی رو محاسبه کنه باید به mb_strlen تغییر کنه (mb مخفف multi byte هست که اشاره به 2 یا چند بایتی بودن هر کاراکتر در برخی انکودینگ ها مثل utf8 داره، در انکودینگ ascii برای هر کاراکتر 1 بایت در نظر گرفته میشه...)
یه سری کار های اولیه مثل اضافه کردن تگ متا utf8 به head خروجی html هم بررسی کنید (که احتمالا از قبل انجام شده و نیاز نیست کار خاصی انجام بدید).
اون موردی که فرمودید انکودینگ فایل های php رو تغییر بدید هم که مسلما لازمه.
-
تعداد تشکر ها ازFarid.Agl به دلیل پست مفید