好东西,自动判断字符是否是UTF-8 编码
这东西是我在修改phpMyVisites中关键字乱码时用到的,效果只能用一个字形容: 灰常8错, 说错了应该是4个字.具体问题见下面描述.我用phpMyVistes做统计,发现取出来关键词有些乱码,原因在于,取出来的文字一部份是gb2312的,一部份是utf-8的,比如百度用的是gb2312,google用的是utf-8,有没有人知道怎样让它全部都变成utf-8,直接用gb2312 to utf-8的函数肯定是不行的.
<?php
// Returns true if $string is valid UTF-8 and false otherwise.
function is_utf8($string) {
// From http://w3.org/International/questions/qa-forms-utf-8.html
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
| \xF4[\x80-\x8F][\x80-\xBF]{2} # plane 16
)*$%xs', $string);
}
?>
我也用一个字形容你的帖子:灰常棒! 收藏。。。。。。
忒好了 Jack 能不能具体说一下把这段代码加到什么地方啊, 我怎么找不到 还行。我刚好需要这个代码。 :lol不错,收藏了,这个经常用到。
一般我都指直接在头上加一段HEARDE 真是灵啊。。。:) 这个,要如何修改才可以呢
现在就是百度搜索到的关键字是乱码,很麻烦啊
页:
[1]