
str_word_count 함수는 PHP의 내장 함수 중 하나로, 문자열의 단어 개수를 반환하는 것처럼 보이지만, 실제로 단어의 개수를 반환하지는 않습니다.
이 함수는 문자열에서 공백을 기준으로 단어를 구분하고, 단어의 개수를 반환하는 것이 아니라, 단어의 개수보다 1 더 큰 값을 반환합니다.
예를 들어, "hello world"라는 문자열을 입력했을 때, str_word_count 함수는 2를 반환하는 것처럼 보이지만, 실제로 1을 반환합니다.
올바른 방법으로 단어의 개수를 구할 수 있는 방법은, 문자열에서 공백을 기준으로 단어를 구분하고, 단어의 개수를 직접 카운팅하는 것입니다.
예를 들어, "hello world"라는 문자열을 입력했을 때, 다음과 같이 단어의 개수를 구할 수 있습니다.
#hostingforum.kr
php
$str = "hello world";
$words = explode(" ", $str);
$count = count($words);
echo $count; // 2
또는, preg_match_all 함수를 사용하여 단어의 개수를 구할 수 있습니다.
#hostingforum.kr
php
$str = "hello world";
preg_match_all("/bw+b/", $str, $matches);
$count = count($matches[0]);
echo $count; // 2
이러한 방법을 사용하여 올바른 단어의 개수를 구할 수 있습니다.
2025-08-14 13:18