首页 > 其他 > 详细

检测字符串是否为UTF8编码

时间:2019-06-17 17:40:01      阅读:102      评论:0      收藏:0      [点我收藏+]
/**
 * 检测字符串是否为UTF8编码
 * @param  string  $str 被检测的字符串
 * @return boolean      
 */
function is_utf8($str){
    $len = strlen($str); 
    for($i = 0; $i < $len; $i++){ 
        $c = ord($str[$i]); 
        if ($c > 128) { 
            if (($c > 247)) return false; 
            elseif ($c > 239) $bytes = 4; 
            elseif ($c > 223) $bytes = 3; 
            elseif ($c > 191) $bytes = 2; 
            else return false; 
            if (($i + $bytes) > $len) return false; 
            while ($bytes > 1) { 
                $i++; 
                $b = ord($str[$i]); 
                if ($b < 128 || $b > 191) return false; 
                $bytes--; 
            } 
        } 
    } 
    return true;
}

 

检测字符串是否为UTF8编码

原文:https://www.cnblogs.com/bluealine/p/11040716.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!