본문 바로가기

PHP/PHP7 예비학교

[PHP] 문자열 길이 구하기 - mb_strlen(), strlen()

mb_strlen()과 strlen()의 차이


문자열의 길이를 세는 기능은 똑같습니다.

하지만, 영문자를 셀 때는 무엇을 상관없지만 한글을 셀 때는 차이가 나게 됩니다.

 

<?php
$alpha = "abc";
$han = "ㄱㄴㄷ";

echo strlen($alpha);    // 3
echo mb_strlen($alpha); // 3

echo strlen($alpha);    // 3
echo mb_strlen($han);   // 6
?>

 

따라서, 한글을 셀 때에는 반드시 mb_strlen()을 사용해야합니다.

 

mb_strlen() 사용법


mb_strlen ( string $str [, string $encoding = mb_internal_encoding() ] ) : int

 

인자 위치 설명
첫 번째 길이를 셀 문자열
두 번째 인코딩 방식
<?php
$han = "ㄱㄴㄷ";

echo strlen($han);		// 9
echo mb_strlen($han);		// 6
echo mb_strlen($han, "UTF-8");	//3
?>

 

strlen() 사용법


strlen ( string $string ) : int
인자 위치 설명
첫 번째 길이를 셀 문자열
<?php
$alpha = "abc";

echo strlen($alpha);    // 3
?>
반응형