/** * Utf-8, gb2312 both support the Chinese character interception function * @param string $string the text to be intercepted * @param number $sublen intercept length * @param numbers $start start digits * @p Aram String $omitted ellipsis * @param string $code encoded format default UTF-8 * @return string */function cut_str ($string, $sublen, $start = 0, $omitted = ' ... ', $code = ' UTF-8 ') {if ($code = = ' UTF-8 ') {$pa = "/[\x01-\x7f]|[ \xc2-\xdf][\x80-\xbf]|\xe0[\xa0-\xbf][\x80-\xbf]| [\xe1-\xef] [\X80-\XBF] [\x80-\xbf]|\xf0[\x90-\xbf][\x80-\xbf][\x80-\xbf]| [\xf1-\xf7] [\X80-\XBF] [\X80-\XBF] [\x80-\xbf]/];p reg_match_all ($PA, $string, $t _string), if (count ($t _string[0])-$start > $sublen) return join (', Array_slice ($t _string[0], $start, $sublen)). $omitted, return join (", Array_slice ($t _string[0], $start, $sublen));} else{$start = $start, $sublen = $sublen * *; $strlen = strlen ($string); $tmpstr = "; for ($i =0; $i < $strlen; $i + +) {if ($i &G t;= $start && $i < ($start + $sublen)) {if (Ord (substr ($string, $i, 1)) >129) {$tmpstr. = substr ($string, $i, 2);} else{$tmpstr. = substr ($string, $i, 1);}} if (Ord (substr($string, $i, 1)) >129) $i + +;} if (strlen ($TMPSTR) < $strlen) $tmpstr. = $omitted; return $tmpstr;}}
The above describes the Utf-8, GB2312 supports the Chinese character interception function, including the aspects of the content, I hope that the PHP tutorial interested in a friend helpful.