PHP mb_convert_encoding 获取字符串编码类型实现代码
程序员文章站
2022-06-19 19:13:25
后来又在手册上找到了is_utf8函数,这样,再结合iconv函数,我的问题就解决了。下面帖出这个函数: 复制代码 代码如下:function is_utf8($strin...
后来又在手册上找到了is_utf8函数,这样,再结合iconv函数,我的问题就解决了。下面帖出这个函数:
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
| \xf4[\x80-\x8f][\x80-\xbf]{2} # plane 16
)*$%xs', $string);
} // function is_utf8
如果想深入研究,建议看下php手册上的“multibyte string functions”这一部分的内容。
复制代码 代码如下:
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
| \xf4[\x80-\x8f][\x80-\xbf]{2} # plane 16
)*$%xs', $string);
} // function is_utf8
如果想深入研究,建议看下php手册上的“multibyte string functions”这一部分的内容。
推荐阅读
-
PHP mb_convert_encoding 获取字符串编码类型实现代码
-
PHP mb_convert_encoding 获取字符串编码类型实现代码
-
PHP mb_convert_encoding 获取字符串编码类型实现代码_PHP
-
PHP mb_convert_encoding 获取字符串编码类型实现代码_php技巧
-
详解c#实现获取汉字十六进制Unicode编码字符串的示例代码
-
php获取汉字中首字母(gb2312编码)的实现代码
-
PHP mb_convert_encoding 获取字符串编码类型实现代码_PHP教程
-
PHP mb_convert_encoding 获取字符串编码类型实现代码
-
converse one star PHP mb_convert_encoding 获取字符串编码类型实现代码
-
php获取汉字中首字母(gb2312编码)的实现代码