LAMP
PHP 한글 문자열길이 2자릿수로 계산하기
영은파더♥
2017. 9. 19. 10:39
728x90
PHP 한글 문자열길이 2자릿수로 계산하기
영문과 한글이 썩인 문자열을 strlen 이나 mb_strlen 함수로 글자길이 값을 구하면 원하지 않은 값을 가져옵니다.
예제)
$str = "abcd 가나다라";
echo strlen($str); // 17
echo mb_strlen($str, "utf-8"); // 9
strlen 은 utf-8 로 한글은 3byte 로 계산됩니다.
그리고 mb_strlen 으로 계산하면 1로 리턴됩니다.
한글을 2바이트로 계산하는 방법입니다.
$str = "abcd 가나다라";
$w_len = mb_strlen($str,"utf-8") + (strlen($str) - mb_strlen($str,"utf-8")) / 2;
echo $w_len; // 13
mb_strlen 값에 strlen 과 mb_strlen 으로 구한 값의 평균값을 더해주면 됩니다.
728x90
반응형