This code is like/** + ------------------------------------------------------------------ * string Truncation in thinkphp, supports Chinese and other encodings + ---------------------------------------------------------- * @ static * @ access public + ---------------------------------------------------------- * @ param string $ str string to be converted * @ param string $ start position * @ param string $ length truncation length * @ param string $ charset encoding format * @ param string $ suffix truncation display characters + ----------------- --------------------------------------- * @ Return string + response */function msubstr ($ str, $ start = 0, $ length, $ charset = "UTF-8", $ suffix = true) {if (function_exists ("mb_substrs") {$ slice = mb_substr ($ str, $ start, $ length, $ charset );} elseif (function_exists ('iconv _ substr') {$ slice = iconv_substr ($ str, $ start, $ length, $ charset);} else {www.2cto.com $ re ['utf- 8'] = "/[\ x01-\ x7f] | [\ xc2-\ xdf] [\ x80-\ xbf] | [\ xe0-\ xef] [\ x80- \ xbf] {2} | [\ xf0-\ xff] [\ x80-\ xbf] {3 }/"; $ re ['gb2312'] = "/[\ x01-\ x7f] | [\ xb0-\ xf7] [\ xa0-\ xfe]/"; $ re ['gbk'] = "/[\ x01-\ x7f] | [\ x81-\ xfe] [\ x40-\ xfe]/"; $ re ['big5'] = "/[\ x01-\ x7f] | [\ x81-\ xfe] ([\ x40-\ x7e] | \ xa1-\ xfe]) /"; preg_match_all ($ re [$ charset], $ str, $ match); $ slice = join (" ", array_slice ($ match [0], $ start, $ length);} if ($ suffix) return $ slice. "... "; Return $ slice ;}