1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | function getSubstring( $str , $length ) { $str = trim( $str ); if ( strlen ( $str ) <= $length ) return $str ; $strArr = preg_split( "//u" , $str , -1, PREG_SPLIT_NO_EMPTY); $cutStr = '' ; foreach ( $strArr as $s ) { $len1 = strlen ( $s ); $len2 = strlen ( $cutStr ) + $len1 ; if ( $len2 > $length ) break ; else $cutStr .= $s ; } return $cutStr ; } |
getSubstring 함수는 주어진 문자열을 주어진 길이(byte) 만큼 자른 후 리턴한다. 만약 주어진 길이만큼 자를 때 마지막 문자가 정상적인 문자가 아닌 경우는 그 전 문자까지 리턴한다.