php 에서 문자열 길이 계산해주는 함수에는 strlen 이 있다.
근데 한글인 문자열 길이를 보려고 하니까
여태껏 알고있던 한글의 byte 는 한 글자당 2byte라고 생각하고 있었기에...
무엇보다 jQuery에서는 같은 문자열의 length 값을 출력하면 한글이던 숫자던 한 글자당 1개로 쳐서 출력되는 것을 원해서 찾아보던 중
다음 함수를 접했다.
이와 같이
근데 한글인 문자열 길이를 보려고 하니까
strlen
은 한글자당 3byte로 계산해서 출력이 된다.여태껏 알고있던 한글의 byte 는 한 글자당 2byte라고 생각하고 있었기에...
무엇보다 jQuery에서는 같은 문자열의 length 값을 출력하면 한글이던 숫자던 한 글자당 1개로 쳐서 출력되는 것을 원해서 찾아보던 중
다음 함수를 접했다.
var str = '테스트';
strlen(str); //9
mb_strlen(str, 'euc-kr'); //6
mb_strlen(str, 'utf-8'); //3
mb_strlen
을 사용할 때 변환코드를 입력하면 그에 알맞게 출력 값을 받을 수 있다. euc-kr 로 하면 한글은 한글자당 2byte로 계산된다
utf-8로 하면 한글이던 영문이던 한글자당 1개로 계산된다.