|  | 
 
| PHP复制代码 复制代码function seems_utf8($Str) { # by bmorel at ssi dot fr $length = strlen($Str);
        for ($i=0; $i < $length; $i++) {
                if (ord($Str[$i]) < 0x80) continue; # 0bbbbbbb
 elseif ((ord($Str[$i]) & 0xE0) == 0xC0) $n=1; # 110bbbbb
 elseif ((ord($Str[$i]) & 0xF0) == 0xE0) $n=2; # 1110bbbb
 elseif ((ord($Str[$i]) & 0xF8) == 0xF0) $n=3; # 11110bbb
 elseif ((ord($Str[$i]) & 0xFC) == 0xF8) $n=4; # 111110bb
 elseif ((ord($Str[$i]) & 0xFE) == 0xFC) $n=5; # 1111110b
 else return false; # Does not match any model
 for ($j=0; $j<$n; $j++) { # n bytes matching 10bbbbbb follow ?
 if ((++$i == $length) || ((ord($Str[$i]) & 0xC0) != 0x80))
                        return false;
                }
        }
        return true;
}
 | 
 评分
查看全部评分
 |