php utf8编码的字符串截取方法
内容摘要
这篇文章主要为大家详细介绍了php utf8编码的字符串截取方法,具有一定的参考价值,可以用来参考一下。
经测试代码如下:
/**
* 截取编码为utf8的字符串
*
* @param string
经测试代码如下:
/**
* 截取编码为utf8的字符串
*
* @param string
文章正文
这篇文章主要为大家详细介绍了php utf8编码的字符串截取方法,具有一定的参考价值,可以用来参考一下。
经测试代码如下:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | <code class = "php" > /** * 截取编码为utf8的字符串 * * @param string $strings 预处理字符串 * @param int $start 开始处 eg:0 * @param int $length 截取长度 * @author php教程 www.idcnote.com */ function subString( $strings , $start , $length ) { if (function_exists( 'mb_substr' ) && function_exists( 'mb_strlen' )) { $sub_str = mb_substr( $strings , $start , $length , 'utf8' ); return mb_strlen( $sub_str , 'utf8' ) < mb_strlen( $strings , 'utf8' ) ? $sub_str . '...' : $sub_str ; } $str = substr ( $strings , $start , $length ); $char = 0; for ( $i = 0; $i < strlen ( $str ); $i ++) { if (ord( $str [ $i ]) >= 128) $char ++; } $str2 = substr ( $strings , $start , $length + 1); $str3 = substr ( $strings , $start , $length + 2); if ( $char % 3 == 1) { if ( $length <= strlen ( $strings )) { $str3 = $str3 .= '...' ; } return $str3 ; } if ( $char % 3 == 2) { if ( $length <= strlen ( $strings )) { $str2 = $str2 .= '...' ; } return $str2 ; } if ( $char % 3 == 0) { if ( $length <= strlen ( $strings )) { $str = $str .= '...' ; } return $str ; } } /*** 来自php教程(www.idcnote.com) ***/ </code> |
注:关于php utf8编码的字符串截取方法的内容就先介绍到这里,更多相关文章的可以留意
代码注释