-
February 14th, 2011, 21:14
#1
چک کردن حروف فارسی در تابع کنترل کارکتر در php
سلام
دودستان می دونید که تو پی اچ پی برای کنترل کارکترها از عبارات مثل این استفاده می کنند.
کد PHP:
if (preg_match("/^[a-zA-Z0-9]+$/", $pas))
اگر هم بخاهیم کل کارکتر های استاندارد رو وارد و چک کنیم از تابع زیر استفاده می کنیم:
کد PHP:
if (ereg("^[[:print:]]$", $pas))
در این توابع فقط حروف لاتین ، اعداد و کارکتر ها مجاز هستند. حال سوال من این است که برای وارد کردن و چک کردن حروف فارسی چه راهکاری پیشنهاد می کنید.
-
-
February 14th, 2011 21:14
# ADS
-
February 14th, 2011, 21:21
#2
عضو دائم
پاسخ : چک کردن حروف فارسی در تابع کنترل کارکتر در php
براي حروف عربي عبارت معادل داريم ولي متاسفانه نه براي فارسي
بهترين كار اينه كه حروف فارسي رو توي يك آرايه نگه داري و روي رشته راه بري و مقايسه كني ...
البته ميشه بازه كد اسكي كاراكتر هاي فارسي رو از اولين تا آخرين حرف مجاز در نظر گرفت و با كد اسكي كاراكتر هاي رشته مقايسه كرد.اولين كاراكتري كه خارج از بازه يافت بشه معلوم ميشه عبارت وارد شده فارسي نيست.
-
تعداد تشکر ها ازRezash به دلیل پست مفید
-
February 15th, 2011, 15:03
#3
پاسخ : چک کردن حروف فارسی در تابع کنترل کارکتر در php
لطفا عبارت معادل حروف عربی رو بیشتر توضیح دهید.
و در کل مثال های عملی در مورد حروف فارسی و روش های اون رو کجا می شه مطالعه کرد.
آیا ممکن است با یک مثال توضیح بفرمایید.
-
-
February 15th, 2011, 16:36
#4
عضو دائم
پاسخ : چک کردن حروف فارسی در تابع کنترل کارکتر در php
اين در مورد عربي :
کد PHP:
if(preg_match('/^([\p{Arabic}]|\s)*$/u', "string"))
---------- Post added at 05:36 PM ---------- Previous post was at 05:30 PM ----------
در مورد كد اسكي
حروف و كاراكترهاي فارسي رو يكي يكي از الف معمولي گرفته تا آ (با كلاه !) و هر كاراكتري كه ميخوايد قبول كنيد رو معادل اسكي ش رو بگيريد (با تابع ord)
ميبينيد كه يك بازه درست ميشه كه اگه كاراكترهاي رشته ورودي تو اين بازه باشند معلوم ميشه متن ورودي تماما از ميان كاراكترهاي مورد نظر شماست.
-
تعداد تشکر ها از Rezash به دلیل پست مفید
-
October 8th, 2013, 16:45
#5
پاسخ : چک کردن حروف فارسی در تابع کنترل کارکتر در php
دوستان آدم تنبل بدرد اینحا می خوره
ببنید برای جروف فارسی کدی وجود نداره ؟
پس کافیه که در دستور شرط اون رو بوجود بیارید
مثلا ورودی من باید فارسی باشه در غیر این صورت پیغامی چاپ کن
کد:
if (preg_match("/^[a-zA-Z0-9]+$/", $q)) {
$response ="فرمت نام استاندارد نیست لطفا فرمت درست را وارد کنید .";
echo $response ;
}
else
{
echo "حروف فارسی وارد شده است .";
}
به همین سادگی
سلامتی اقا امام زمان هم صلوات
-
تعداد تشکر ها از redevills به دلیل پست مفید