הרשם שאלות ותשובות רשימת חברים לוח שנה הודעות מהיום

חזור   הוסטס - פורום אחסון האתרים הגדול בישראל > עיצוב גראפי, תכנות על כל שפותיו וקידום ושיווק אתרים > פורום תיכנות

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 17-08-10, 21:10   # 1
Hanan
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Sep 2006
גיל: 37
הודעות: 841

Hanan לא מחובר  

תן מוזר בסיום החיתוך של substr

אהלן חברים,
מישהו נתקל בפונקציה substr ברגע שחותכים איזשהו משפט יש כמו תו מוזר בסוף המשפט?
זה קורה רק בקידוד של UTF-8..

יש רעיון למישהו לחיתוך אחר של משפט? או מה זה הבעיה המוזרה הזאת?

תודה, ממש מסקרן אותי לדעת מה זה לפני שאני שובר את הראש...
__________________
פרוייקטים: חדשות, קייטרינג, מילים לשירים, זר מתוק

בניית אתרים - Wise Group Media LTD
  Reply With Quote
ישן 17-08-10, 21:12   # 2
~The_Sultan~
חבר על
 
מיני פרופיל
תאריך הצטרפות: Oct 2008
הודעות: 771

~The_Sultan~ לא מחובר  

זה בגלל שקידוד UTF-8 הוא MULTIBYTE, לא כמו קידוד רגיל - כל תו הוא בעצם שני תווים (בהסבר קצר..)
אתה צריך להשתמש בפונקציה mb_substr עם ערך UTF-8 בקידוד (תלמד עליה טיפונת ותבין) או לעשות מספר זוגי של חתיכה ב-SUBSTR, אבל זה כמובן הרבה פחות טוב וסתם דרך שלא תמיד עובדת ולא מומלצת.
  Reply With Quote
ישן 17-08-10, 21:21   # 3
Hanan
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Sep 2006
גיל: 37
הודעות: 841

Hanan לא מחובר  

קרנבל,
תודה רבה
__________________
פרוייקטים: חדשות, קייטרינג, מילים לשירים, זר מתוק

בניית אתרים - Wise Group Media LTD
  Reply With Quote
ישן 18-08-10, 14:26   # 4
intercooler3819
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Jul 2008
הודעות: 1,056

intercooler3819 לא מחובר  

כשאתה חותך עם SUBSTR תווי UTF-8 כל תו הוא למעשה 2 בתים (להבדיל מחיתוך של תווים שהם לא UTF-8)
מה שקורה למעשה זה שאתה כיביכול חותך את התו באמצע (כיוון שכל תו הוא כמו 2 תווים וחתכת כמות אי זוגית..) ואז הביית היחיד שנשאר לא ניתן להצגה אז הדפדפן מציג אותו בתור סימן שאלה "?" או סתם מין ריבוע מוזר..
.
תשתמש ב mb_substr או שתבנה פונקציה משלך, בהצלחה!
__________________
  Reply With Quote
ישן 18-08-10, 17:56   # 5
Hanan
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Sep 2006
גיל: 37
הודעות: 841

Hanan לא מחובר  

השאלה היא למה אם יש בסוף המשפט את התו " והוא נאלץ לחתוך בדיוק עליו, הוא מוסיף & בסוף המשפט?...
__________________
פרוייקטים: חדשות, קייטרינג, מילים לשירים, זר מתוק

בניית אתרים - Wise Group Media LTD
  Reply With Quote
ישן 18-08-10, 21:40   # 6
RS324
תודה על תרומתך.
 
מיני פרופיל
תאריך הצטרפות: May 2006
הודעות: 3,173

RS324 לא מחובר  

ציטוט:
נכתב במקור על ידי ~The_Sultan~ צפה בהודעה
זה בגלל שקידוד UTF-8 הוא MULTIBYTE, לא כמו קידוד רגיל - כל תו הוא בעצם שני תווים (בהסבר קצר..)
אתה צריך להשתמש בפונקציה mb_substr עם ערך UTF-8 בקידוד (תלמד עליה טיפונת ותבין) או לעשות מספר זוגי של חתיכה ב-SUBSTR, אבל זה כמובן הרבה פחות טוב וסתם דרך שלא תמיד עובדת ולא מומלצת.
תיקון קטן - לא כל התווים הם זוגיים לחלקם יש משקל של 1 ולא של 2
לדוגמא רווחים , מספרים , אותיות באנגלית...
  Reply With Quote
ישן 21-08-10, 23:36   # 7
intercooler3819
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Jul 2008
הודעות: 1,056

intercooler3819 לא מחובר  

ציטוט:
נכתב במקור על ידי RS324 צפה בהודעה
תיקון קטן - לא כל התווים הם זוגיים לחלקם יש משקל של 1 ולא של 2
לדוגמא רווחים , מספרים , אותיות באנגלית...
כן כמובן

וחנן - כנראה שהחצי השני של " מסמל לבדו &
אבל הדבר יכול להשתנות כתלות בדפדפן של המשתמש
__________________
  Reply With Quote
השב

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 


חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 16:30.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ