function StringCut( $String, $Length, $EndMark='' ) {
// 자를필요없으면 리턴
if( strlen( $String ) <= $Length ) return $String;
for( $i=0; $i<strlen( $String ); $i++ ){
//아스키코드 129 번부터는 2 Byte 문자
//2 Byte 문자인경우 1 Byte 를 더 읽은 샘으로 침.
if( ord( substr( $String, $i-1, $i ) ) > 128 ){
$i++;
$Length++;
}
//$Length 까지 왔을경우 리턴
if( $i >= $Length ){return substr( $String, 0, $Length ).$EndMark; }
}
// 자를필요가 없지만 글자수와 byte 수를 비교하지 못함으로
// 루프를 다돌아도 리턴되지 않는다면 그냥 월래 문자열 return;
return $String;
}
출처 : http://blog.naver.com/ryl9924/140172820219
반응형
'홈페이지 제작 > PHP, MySQL' 카테고리의 다른 글
[MySQL] 우편번호 2012년 1월 26일자 UTF-8 버전 다운로드 (2) | 2012.01.26 |
---|---|
MD5 암호화 / 복호화 (ENCODE / DECODE) (5) | 2011.08.05 |
[PHP] 파일 (만들기, 쓰기, 읽기, 디렉토리 파일읽기) (0) | 2011.07.11 |
[PHP] 다른 서버로 값을 전송후 결과값을 받는 방법 (0) | 2011.07.09 |
[PHP] 문자열에서 숫자만 남기고 모두 삭제 (0) | 2010.06.09 |