#============================================================================# 中文字符串截取函数# 参数说明:# $fStr:需要截最的原始字符串;# $fStart:从第几个汉字后开始载取,从头开始截取使用 0# $fLen:截取几个汉字# $fCode:原始字符串的编码方式,默认为 gb2312 或 big5,UTF-8 按 UTF-8 编码方式截取#----------------------------------------------------------------------------Function msubstr ($fStr, $fStart, $fLen, $fCode = "") { switch ($fCode) { case "UTF-8" : preg_match_all("/[/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]/", $fStr, $ar); if(func_num_args() >= 3) { if (count($ar[0])>$fLen) { return join("",array_slice($ar[0],$fStart,$fLen))."..."; } return join("",array_slice($ar[0],$fStart,$fLen)); } else { return join("",array_slice($ar[0],$fStart)); } break; default: $fStart = $fStart*2; $fLen = $fLen*2; $strlen = strlen($fStr); for ( $i = 0; $i < $strlen; $i++ ) { if ( $i >= $fStart && $i < ( $fStart+$fLen ) ) { if ( ord(substr($fStr, $i, 1)) > 129 ) $tmpstr .= substr($fStr, $i, 2); else $tmpstr .= substr($fStr, $i, 1); } if ( ord(substr($fStr, $i, 1)) > 129 ) $i++; } if ( strlen($tmpstr) < $strlen ) $tmpstr .= "..."; Return $tmpstr; }}?>
php 中文字符串的比较,php 中文字符串截取函数-->比较好的
最新推荐文章于 2021-04-22 13:53:15 发布