
mb_substr_count 함수는 한글을 포함한 모든 문자열에서 특정 문자를 찾는 데 사용됩니다.
이 함수는 문자열에서 특정 문자를 찾기 전에, 문자열의 인코딩을 확인해야 합니다. PHP의 기본 인코딩은 UTF-8이지만, 이 경우에는 UTF-8 인코딩을 사용하지 않고, 다른 인코딩을 사용한 경우가 있을 수 있습니다.
위의 예시 코드에서, $str 변수는 UTF-8 인코딩을 사용하지 않고, 다른 인코딩을 사용한 문자열이기 때문에, mb_substr_count 함수가 올바르게 작동하지 않을 수 있습니다.
해결 방법은 두 가지가 있습니다.
1. UTF-8 인코딩을 사용하여 문자열을 생성합니다.
#hostingforum.kr
php
$str = "안녕하세요";
2. mb_detect_encoding 함수를 사용하여 문자열의 인코딩을 확인하고, UTF-8 인코딩으로 변환합니다.
#hostingforum.kr
php
$str = "안녕하세요";
$str = iconv(mb_detect_encoding($str, mb_detect_order(), true), "UTF-8", $str);
또한, mb_substr_count 함수는 UTF-8 인코딩을 사용하여 작동하므로, UTF-8 인코딩을 사용하는 것이 좋습니다.
2025-04-01 09:34