PHP 버전
4.0.6+
$mb_str = '환영합니다.'; // 멀티바이트 문자열(한글)
var_dump(mb_strlen($mb_str, 'UTF-8')); // int(6)

$str_1 = 'abcdef1234';
var_dump(mb_strlen($str_1, 'UTF-8')); // int(10)

/* 공백도 문자열의 길이에 포함 */
$str_2 = 'abc def';
var_dump(mb_strlen($str_2, 'UTF-8')); // int(7)

$str_3 = ' abc def ';
var_dump(mb_strlen($str_3, 'UTF-8')); // int(9)

$str_4 = ' ';
var_dump(mb_strlen($str_4, 'UTF-8')); // int(1)

/* 빈 문자열 */
$str_5 = '';
var_dump(mb_strlen($str_5, 'UTF-8')); // int(0)

/* 문자열이 아닌 boolean 타입 */
var_dump(mb_strlen(true, 'UTF-8')); // int(1)
var_dump(mb_strlen(false, 'UTF-8')); // int(0)
mb_strlen(string $string, ?string $encoding = null): int
$str_1 = true;
var_dump(mb_strlen($str_1, 'UTF-8')); // int(1)

$str_2 = false;
var_dump(mb_strlen($str_2, 'UTF-8')); // int(0)
$mb_str = '환영합니다.';
var_dump(mb_strlen($mb_str, null));
// Warning: mb_strlen(): Unknown encoding
$mb_str = '환영합니다.';
var_dump(mb_strlen($mb_str, null)); // int(6)