php下检测字符串是否是utf8编码的代码

前端之家收集整理的这篇文章主要介绍了php下检测字符串是否是utf8编码的代码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

functionis_utf8($string){
returnpreg_match('%^(?:
[\x09\x0A\x0D\x20-\x7E]#ASCII
|[\xC2-\xDF][\x80-\xBF]#non-overlong2-byte
|\xE0[\xA0-\xBF][\x80-\xBF]#excludingoverlongs
|[\xE1-\xEC\xEE\xEF][\x80-\xBF]{2}#straight3-byte
|\xED[\x80-\x9F][\x80-\xBF]#excludingsurrogates
|\xF0[\x90-\xBF][\x80-\xBF]{2}#planes1-3
|[\xF1-\xF3][\x80-\xBF]{3}#planes4-15
|\xF4[\x80-\x8F][\x80-\xBF]{2}#plane16
)*$%xs',$string);
}
准确率基本和mb_detect_encoding一样,要对一起对,要错一起错。
编码检测不可能100%准确,这个东西已经可以基本满足要求了。

猜你在找的PHP相关文章