반응형

몇일전 제로보드를 utf-8 환경으로 컨버팅 한적이 있는데.

그후에 몇가지 오류가 발견되었다.

이건 그중에 하나로 최근게시물 같은데서 문자열을 자를때 잘린 문자가 깨져서 나오는 경우이다.

php 의 strlen 으로 한글 한글자의 길이를 확인해본결과 3 이었다.

기존에 zb4 가 개발되던 euc-kr 환경은 2였기때문에 cut_str 함수를 수정해 줄필요가 있다.

수정은 아래와같이 했다.

lib.php 파일의 cut_str 함수를 아래와같이 수정한다.

function cut_str($msg,$cut_size) {
  if($cut_size<=0) return $msg;
  if(ereg("\[re\]",$msg)) $cut_size=$cut_size+4;
 
  $max_size = $cut_size;
  $i=0;
  while(1) {
   if (ord($msg[$i])>127)
    $i+=3;
   else
    $i++;
   if (strlen($msg) < $i)
    return $msg;
   if ($max_size == 0)
    return substr($msg,0,$i)."...";
   else
    $max_size--;
  }
}

끄읏.
반응형

'WebPrograming관련' 카테고리의 다른 글

웹 표준 가이드  (0) 2007.04.21
TABLE의 수평,수직 정렬  (0) 2007.03.25
테이블, 이미지 테두리관련 스타일  (0) 2007.03.24
Posted by Real_G