함수좀 봐주세요^^
글쓴이: yongjong / 작성시간: 토, 2005/12/03 - 3:59오후
그누보드를 utf-8 로 쓰다가 글자수로 자르기 함수때문에 잘린부분이 깨져서,,
질문드립니다.
// 한글 한글자(2byte)는 길이 2, 공란.영숫자.특수문자는 길이 1 function cut_str($str, $len, $suffix="…") { $s = substr($str, 0, $len); $cnt = 0; for ($i=0; $i<strlen($s); $i++) if (ord($s[$i]) > 127) $cnt++; $s = substr($s, 0, $len - ($cnt % 2)); if (strlen($s) >= strlen($str)) $suffix = ""; return $s . $suffix; }
원래의 코드입니다.
3byte문자도 깔끔하게 자르려면 어떻게 수정해야 되는지요?
Forums:
utf-8 을 정상적으로 지원하려면 무조건 2바이트 혹은 3바이트로 자르
utf-8 을 정상적으로 지원하려면 무조건 2바이트 혹은 3바이트로 자르면 안됩니다... 한글 영역이 3바이트를 사용하기는 하지만... 무조건 멀티바이트 일경우 3바이트는 아니니까요 :)
예전에 관련된 코드를 짜둔게 있어서 링크를 겁니다 ... 3바이트 이상 차지하는 경우에 대한 처리를 안했기 때문에 --;; 그런 언어를 사용할 경우엔 문제가 생길 수도 있습니다...
http://mytears.org/resources/mysrc/php/unicode/utf8.php
오랫동안 꿈을 그리는 사람은 그 꿈을 닮아간다...
http://mytears.org ~(~_~)~
나 한줄기 바람처럼..
감사합니다~
감사합니다~
쏘나기이고 싶어라
지금 사용하시는 php 엔진에 혹시 [url=http://kr.php.n
지금 사용하시는 php 엔진에 혹시 multibyte string 옵션이 켜져있거나 직접 켜실 수 있는 상황이라면 mb_substr 함수를 써보실 수도 있습니다.
--
자본주의, 자유민주주의 사회에서는 결국 자유마저 돈으로 사야하나보다.
사줄테니 제발 팔기나 해다오. 아직 내가 "사겠다"고 말하는 동안에 말이다!
앗~! 또 감사드립니다^^ 테스트용 리눅스에 깔린거라 가능할겁니다.p
앗~! 또 감사드립니다^^ 테스트용 리눅스에 깔린거라 가능할겁니다.
php5 이구요.
http://bbs.kldp.org/viewtopic.php?t=22177
이것은 어떤가요?
쏘나기이고 싶어라
댓글 달기