새로운 cut_str 함수 > 그누3 팁자료실

그누3 팁자료실

새로운 cut_str 함수 정보

일반 새로운 cut_str 함수

본문

기존의 cut_str 함수는 제생각에는 뭔가 문제가 있는듯합니다.(이유는 모르겠읍니다.)
물론 한글의 깨지지않고 잘 나오지만
한글이외의 2바이트문자의 경우에는 글자가 깨지는 현상이 있어서 새로 만들었읍니다.
두개의 코드의 틀린점은 trim() 이용한것과 같은 알고리즘인데도  다른방식을 이용햇는데
어쨋든 일본어를 자를때 깨지는현상이 사라졋읍니다.
한글 코드에 대한 이해가 없어서  확실한 얘기는 못드리겠지만
이렇게 바꾸니 한글과 일본어 다 이상없이 잘 나오는듯합니다.
/lib/string.lib.php  파일내에  sut_str 함수 정의 부분을 다음내용으로 바꿔주시면 됩니다.
저와같이 일본어게시판 이용하시는분은 꼭 적용하세요
 

function cut_str($TSTR,$TLEN,$SUF="…") {

$TSTR = trim($TSTR);
$TSTR = stripslashes($TSTR);
if ( strlen($TSTR) > $TLEN ) {
$flag = 0;
for($i=0 ; $i< $TLEN ; $i++) {
$j = ord($TSTR[$i]);
if($j > 127) {
if( $flag )
$flag = 0;
else
$flag = 1;
}
else {
$flag = 0;
}
}
if( $flag ) {
$TSTR = substr($TSTR, 0, $TLEN - 1);
$TSTR = $TSTR.chr(32);
}
else {

$TSTR = substr($TSTR, 0, $TLEN);
}
return $TSTR.$SUF;

}
else if ( strlen($TSTR) < $TLEN ) {
$TLENGTH = strlen($TSTR);
return $TSTR;

}
else if ( strlen($TSTR) == $TLEN ) {
return $TSTR;
}
}
추천
0
  • 복사

댓글 전체

© SIRSOFT
현재 페이지 제일 처음으로