문장에서 첫 번째 단어를 추출하는 작업은 PHP의 내장 함수인 strtok를 활용하면 매우 간단하게 처리할 수 있습니다. 아래 예제를 통해 구체적인 사용 방법을 살펴보겠습니다.
예제 코드
<?php $my_string = 'Hi there, this is a sample statement'; echo "The first word of the string is ". strtok($my_string, " "); ?>
실행 결과
The first word of the string is Hi
코드 설명
먼저 분석할 문자열을 변수에 정의합니다.
$my_string = 'Hi there, this is a sample statement';
strtok 함수는 문자열을 지정한 구분자(delimiter)를 기준으로 토큰 단위로 잘라내는 PHP 내장 함수입니다. 위 예제에서는 공백(" ")을 구분자로 사용했기 때문에, 첫 번째 공백이 나타나기 전까지의 문자열, 즉 문장의 첫 번째 단어만 반환됩니다.
이렇게 잘라낸 첫 번째 단어를 echo를 통해 화면에 출력합니다.
echo "The first word of the string is ". strtok($my_string, " ");
추가 팁: 다른 대안 방법들
strtok 외에도 동일한 결과를 얻을 수 있는 방법이 몇 가지 있습니다.
explode(' ', $my_string)[0]— 문자열을 배열로 분리한 뒤 첫 번째 요소를 가져오는 방식strstr($my_string, ' ', true)— 구분자 앞부분만 반환하는 방식substr($my_string, 0, strpos($my_string, ' '))— 위치를 계산해 직접 자르는 방식
그중 strtok는 별도의 배열을 생성하지 않고 내부 포인터만 이동하므로 메모리 효율이 뛰어나며, 긴 문자열을 반복적으로 처리해야 하는 경우에 특히 유용합니다.