判断字符串编码是否为utf-8函数

<?php
//判断字符串是否为utf-8
//2011-07-09
function CodingUft($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 );
} 
?>

Leave a Reply

(will not be published)