Computer >> 컴퓨터 >  >> 프로그래밍 >> PHP

PHP str_word_count() 함수 완벽 정리 – 문자열 단어 개수 세기와 활용법

PHP의 str_word_count() 함수는 문자열에 포함된 단어에 대한 정보를 반환하는 내장 함수입니다. 단어의 개수만 필요한지, 단어 목록이 필요한지, 아니면 각 단어의 위치까지 필요한지에 따라 다양한 형태의 결과를 얻을 수 있습니다.

문법(Syntax)

str_word_count(str, return, char)

매개변수(Parameters)

  • str − 단어 정보를 확인하고자 하는 대상 문자열입니다.

  • return − str_word_count() 함수의 반환 형식을 지정합니다.

    사용 가능한 값은 다음과 같습니다.

    • 0 − 문자열에서 발견된 단어의 개수를 반환합니다. (기본값)

    • 1 − 문자열에서 추출한 단어들이 담긴 배열을 반환합니다.

    • 2 − 키(key)는 해당 단어가 문자열 내에서 위치한 인덱스, 값(value)은 실제 단어인 연관 배열을 반환합니다.

  • char − 단어의 일부로 취급할 추가 특수 문자를 지정합니다. 예를 들어 하이픈(-)이 포함된 단어도 하나의 단어로 인식하게 할 수 있습니다.

반환 값(Return)

str_word_count() 함수는 return 매개변수의 설정에 따라 배열 또는 숫자를 반환합니다.

  • return 값이 0이면 단어 개수(int)를 반환합니다.
  • return 값이 1 또는 2이면 단어 정보가 담긴 배열(array)을 반환합니다.

예제(Example)

다음은 str_word_count() 함수의 기본적인 사용 예시입니다.

<?php
print_r(str_word_count("Demo text!", 1));
?>

실행 결과(Output)

Array (
    [0] => Demo
    [1] => text
)

위 예제에서 return 매개변수로 1을 전달했기 때문에, 문자열 "Demo text!"에서 추출된 단어들이 배열 형태로 출력됩니다. 만약 두 번째 인수 없이 호출하면 단순히 단어 개수인 2가 반환됩니다.

참고 사항

str_word_count() 함수는 기본적으로 알파벳(a-z, A-Z)과 숫자 0-9, 아스키 문자를 기준으로 단어를 판별하므로, 한글 같은 멀티바이트 문자열에는 적합하지 않습니다. 한글 문장에서 단어를 세거나 분리하려면 preg_split(), mb_split() 등 멀티바이트를 지원하는 정규표현식 함수를 사용하는 것이 좋습니다.