PHP实现GBK/UTF-8编码自动转换的函数
PHP #编码 #函数2012-10-29 14:43
实践中,基本上比较流行的编码就是GBK和UTF-8的转换,所以这个函数是针对这两个编码进行自动转换的。
<?php /** * http://yige.org/php/ * @ string 需要转换的文字 * @ encoding 目标编码 **/ function detect_encoding($string,$encoding = 'gbk'){ $is_utf8 = preg_match('%^(?:[\x09\x0A\x0D\x20-\x7E]| [\xC2-\xDF][\x80-\xBF]| \xE0[\xA0-\xBF][\x80-\xBF] | [\xE1-\xEC\xEE\xEF][\x80-\xBF]{2} | \xED[\x80-\x9F][\x80-\xBF] | \xF0[\x90-\xBF][\x80-\xBF]{2} | [\xF1-\xF3][\x80-\xBF]{3} | \xF4[\x80-\x8F][\x80-\xBF]{2} )*$%xs', $string); if($is_utf8 && $encoding == 'utf8'){ return $string; }elseif($is_utf8){ return mb_convert_encoding($string, $encoding, "UTF-8"); }else{ return mb_convert_encoding($string, $encoding, 'gbk,gb2312,big5'); } }
相关文章
- PHP无限级分类数据格式化成树 2012/10/29
- PHP设计模式之外观模式 2012/10/29
- php网页密码登录代码 2012/10/29
- PHP用fsocket模拟GET和POST请求 2012/10/29
- paip.PHP实现跨平台跨语言加解密的方法 2012/10/29
- PHP设计模式之策略模式 2012/10/29
- php数据库操作示例 2012/10/29
- php+mysql缓存技术 2012/10/29
- 在PHP+MySQL中实现Memcache缓存 2012/10/29
- PHP判断文件存在 2012/10/29