הרשם שאלות ותשובות רשימת חברים לוח שנה חיפוש הודעות מהיום סמן פורומים כנקראו

   
|!|

 
 
כלים לאשכול תצורת הצגה
Prev הודעה קודמת   הודעה הבאה Next
ישן 01-04-07, 11:09   # 5
RS324
תודה על תרומתך.
 
מיני פרופיל
תאריך הצטרפות: May 2006
הודעות: 3,173

RS324 לא מחובר  

ציטוט:
נכתב במקור על ידי elbaz.maor צפה בהודעה
ידוע .... הבעיה היא שלא כל שרת תומך בזה ואתה לא יכול לשלב את זה ב PRODUCTION

חיפוש לא ארוך מעלה את התוצאות הבאות :

PHP קוד:
function utf8_substr($str,$from,$len)
{
  return 
preg_replace('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$from.'}'.
                       
'((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$len.'}).*#s',
                       
'$1',$str);

עבור STRLEN :

PHP קוד:
function utf8_strlen($str)    {
  
$n=0;
  for(
$i=0; isset($str{$i}) && strlen($str{$i})>0$i++)    {
    
$c ord($str{$i});
    if (!(
$c 0x80))    // single-byte (0xxxxxx)
      
$n++;
    elseif ((
$c 0xC0) == 0xC0)    // multi-byte starting byte (11xxxxxx)
      
$n++;
  }
  return 
$n;
}

function 
utf8_strlen($str)
    {
    
$count 0;

    for(
$i 0$i strlen($str); $i++)
        {
        
$value ord($str[$i]);
        if(
$value 127)
            {
            if(
$value >= 192 && $value <= 223)
                
$i++;
            elseif(
$value >= 224 && $value <= 239)
                
$i $i 2;
            elseif(
$value >= 240 && $value <= 247)
                
$i $i 3;
            else
                die(
'Not a UTF-8 compatible string');
            }
       
        
$count++;
        }
   
    return 
$count;
    }

// choice 1
function utf8_strlen($str) {
  
$count 0;
  for (
$i 0$i strlen($str); ++$i) {
    if ((
ord($str[$i]) & 0xC0) != 0x80) {
      ++
$count;
    }
  }
  return 
$count;
}

// choice 2
function utf8_strlen($str) {
  return 
preg_match_all('/[\x00-\x7F\xC0-\xFD]/'$str$dummy);

יש עוד כמה פונקציות שעושות בעיות עם UTF8
כמובן שאם יש MBSTRING זה מומלץ
  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. הזמן כעת הוא 19:58.

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