PHP 检测字符串的编码是否是UTF-8编码的函数 check_utf8() 准确率最高的!
2011-11-02 11:31
811 查看
找了一下还以为真的没有,然后自己用 网上说的那种 mb_detect_encoding(),很多是通过了,但是还是有几个测试根本就无法判断成功。
后来我自己终于在官网给出的里面找到了一个函数 check_utf8()。现在备份保留下,希望对大家有帮助。
PS:结尾的时候穿插一个事情。网上其实流传最广的应该是这个:
实在是有点让人受不了了!互联网真的是个垃圾场所啊,一个完全写错了的代码却被转载的次数最多,为什么?
因为中国的那些中文网站大部分都是采集站,自动采集然后发布。
真的害怕有一天,错误说的太多了居然可以成为真理,那这可怕。
后来我自己终于在官网给出的里面找到了一个函数 check_utf8()。现在备份保留下,希望对大家有帮助。
function check_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; } // end of check_utf8
PS:结尾的时候穿插一个事情。网上其实流传最广的应该是这个:
实在是有点让人受不了了!互联网真的是个垃圾场所啊,一个完全写错了的代码却被转载的次数最多,为什么?
因为中国的那些中文网站大部分都是采集站,自动采集然后发布。
真的害怕有一天,错误说的太多了居然可以成为真理,那这可怕。
相关文章推荐
- php检测字符串编码(utf-8,gbk,gb2312)是否为utf8编码的方法总结
- 完美的2个php检测字符串是否是utf-8编码函数分享
- 完美的2个php检测字符串是否是utf-8编码函数分享
- php检测字符串编码(utf-8,gbk,gb2312)是否为utf8编码的方法总结
- PHP检测字符串是否为UTF8编码的常用方法
- php下检测字符串是否是utf8编码的代码
- PHP检测字符串是否为UTF8编码4种方法
- PHP中检测文件是否为UTF-8编码的函数
- PHP检测字符串是否为UTF8编码的常用方法
- PHP检测字符串是否为UTF8编码的常用方法
- php下检测字符串是否是utf8编码的代码
- php判断字符串编码是否为utf8的函数
- PHP 字符串编码截取函数(兼容utf-8和gb2312)
- PHP判断字符串编码是否utf8并转换的方法
- PHP判断字符串编码是否utf8并转换的方法
- PHP实例——判断字符串是否为UTF-8编码
- php使用mb_check_encoding检查字符串在指定的编码里是否有效
- php使用mb_check_encoding检查字符串在指定的编码里是否有效
- 真正根据utf8编码的规律来进行截取字符串的函数(utf8版sub_str )
- PHP 判断字符串是否符合指定格式编码-mb_check_encoding