PHP의 ucwords() 함수는 문자열에 포함된 각 단어의 첫 글자를 대문자로 변환할 때 사용하는 내장 함수입니다. 제목이나 문장의 표기를 일관되게 정리해야 할 때 유용하게 활용할 수 있습니다.
구문
ucwords(str, delimiters)
매개변수
str − 첫 글자를 대문자로 변환할 입력 문자열입니다.
delimiters − (선택 사항) 단어의 경계를 판단할 구분 기호를 지정합니다. 생략하면 공백, 탭, 줄바꿈 등 기본 공백 문자가 단어의 시작으로 인식됩니다.
반환 값
ucwords() 함수는 각 단어의 첫 글자가 대문자로 변환된 새로운 문자열을 반환합니다. 원본 문자열은 변경되지 않습니다.
예제 1: 기본 사용법
다음은 ucwords() 함수의 가장 기본적인 사용 예제입니다 −
<?php
echo ucwords("This is it!");
?>
출력
위 코드의 실행 결과는 다음과 같습니다 −
This Is It!
공백으로 구분된 모든 단어의 첫 글자가 대문자로 바뀐 것을 확인할 수 있습니다.
예제 2: 구분 기호(delimiters) 지정하기
두 번째 매개변수를 사용하면 공백 외의 특수 문자도 단어의 시작점으로 인식시킬 수 있습니다. 아래 예제에서는 # 기호를 구분 기호로 지정했습니다 −
<?php $s = "#demo#text"; $sep = '#'; $res = ucwords($s, $sep); print_r($res); ?>
출력
위 코드의 실행 결과는 다음과 같습니다 −
#Demo#Text
# 기호 뒤에 오는 각 단어(demo, text)의 첫 글자가 대문자로 변환되었습니다. 만약 구분 기호를 지정하지 않으면 이 문자열에는 공백이 없기 때문에 어떠한 변화도 일어나지 않습니다.
참고: ucfirst() 함수와의 차이
ucfirst()는 문자열 전체에서 맨 앞 단어 하나만 첫 글자를 대문자로 변환하는 반면, ucwords()는 모든 단어의 첫 글자를 대문자로 변환한다는 점이 다릅니다. 문장 전체의 제목 스타일(Title Case)을 만들 때는 ucwords()가 적합합니다.