|
הרשם | ![]() |
שאלות ותשובות | ![]() |
רשימת חברים | ![]() |
לוח שנה | ![]() |
הודעות מהיום | ![]() |
חיפוש | ![]() |
|
![]() |
![]() |
|
כלים לאשכול | תצורת הצגה |
|
![]() |
# 1 |
חבר מתקדם
|
בעיית עברית עם preg_match
אהלן,
בניתי פונקציה שבודקת האם מחרוזת שמתקבלת נמצאת בטווח ערכים שמתקבל: PHP קוד:
אחרת - מחזירה 0. עם אנגלית מספרים ותווים זה עובד בלי בעיה. חקרתי את העניין קצת לעומק וגיליתי שתווים עבריים (א-ת) הוא סופר פעמיים. א - 2 תווים. אבג - 6 תווים. אבגדהוזחטיכלמנצעפצקרשת - 44 תווים. הקידוד הוא utf-8. מה אוכל לעשות? תודה! |
![]() |
![]() |
# 2 |
חבר בקהילה
|
גם לי היית אותה הבעיה, רק במקרה אחר, לא הצלחתי לעשות בדיקה על תווים בעברית עם preg_match
במקרה שלי זה היה בדיקה של שם משתמש\ סיסמא אז השתמשתי ב HTMLSPECIALCHARS וכדומה .. אני יחזור לשאלה שלך, אני לא יודע את הפיתרון, ומצטרף אליך גם.
__________________
|
![]() |
![]() |
# 3 |
אחראי פורום
|
יש המון פונקציות שהם utf8-safe שאנשים יצרו.
אגב - כדי לבדוק אורך לא עושים את זה, אלא isset($str[...]) |
![]() |
![]() |
# 4 |
חבר מתקדם
|
|
![]() |
![]() |
# 5 |
חבר מתקדם
|
כשאתה משתמש ב UTF וכותב בעברית מספר התווים גדול יותר.
|
![]() |
![]() |
# 6 |
חבר מתקדם
|
|
![]() |
![]() |
# 7 |
משתמש - היכל התהילה
|
למה שלא תשתמש בstrlen פשוט?
http://il.php.net/manual/en/function.strlen.php |
![]() |
![]() |
# 8 | |
חבר מתקדם
|
@מתן - לא. זה אומר שצריך למצוא דרך לעשות את מה שהוא רוצה שיתמוך ב UTF8.
ציטוט:
|
|
![]() |
![]() |
# 9 |
חבר מתקדם
|
STRLEN היא אינה תומכת בספירת 500 תווים.
באיזה דרך אני יכול לסדר את הבעיה עם הפונקציה? |
![]() |
![]() |
# 10 |
חבר מתקדם
|
הנה זה יתמוך ב multibyte וגם הורדתי את ה preg_match והחלפתי בפקודת IF פשוטה.
PHP קוד:
|
![]() |
![]() |
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
|
|