PHP完美判断字符串是否为utf

 我来答
大杂锅svS3
2013-10-24 · 超过78用户采纳过TA的回答
知道答主
回答量:131
采纳率:0%
帮助的人:71.3万
展开全部
完美判断函数:
function is_utf8($gonten){if (preg_match(/^([.chr(228).-.chr(233).]{1}[.chr(128).-.chr(191).]{1}[.chr(128).-.chr(191).]{1}){1}/,$word) == true || preg_match(/([.chr(228).-.chr(233).]{1}[.chr(128).-.chr(191).]{1}[.chr(128).-.chr(191).]{1}){1}$/,$word) == true || preg_match(/([.chr(228).-.chr(233).]{1}[.chr(128).-.chr(191).]{1}[.chr(128).-.chr(191).]{1}){2,}/,$word) == true){return true;}else{return false;}}使用方法 is_utf8($gonten)就可以判断字符串$gonten是否为utf-8编码了。
网上流传着这样一个判断函数,其实这函数判断是不完整的,函数如下
function is_utf8($string) {
return preg_match('%^(?:
[\x09\x0A\x0D\x20-\x7E] # ASCII
| [\xC2-\xDF][\x80-\xBF] # non-overlong 2-byte
| \xE0[\xA0-\xBF][\x80-\xBF] # excluding overlongs
| [\xE1-\xEC\xEE\xEF][\x80-\xBF]{2} # straight 3-byte
| \xED[\x80-\x9F][\x80-\xBF] # excluding surrogates
| \xF0[\x90-\xBF][\x80-\xBF]{2} # planes 1-3
| [\xF1-\xF3][\x80-\xBF]{3} # planes 4-15
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式