strtoupper()
함수의 사용법
strtoupper()
함수는
문자열을 대문자로 변환해서 반환하는 함수입니다.
이 함수는 인수로 전달된 문자열의 모든 알파벳 문자를 대문자로 변환하여 반환합니다.
주로 문자열 비교나 데이터 정규화와 같은 작업에서 사용됩니다.
문자열을 소문자로 변환하려면 strtolower()
함수를 사용하세요.
strtoupper()
함수의 형식은 다음과 같습니다.
구문
매개변수
$string |
대문자로 변환할 문자열입니다. |
---|
반환 값
대문자로 변환된 문자열을 반환합니다.
반환만 하기 때문에 원본 문자열은 바뀌지 않습니다.
예제
strtoupper()
함수는 문자열 비교나 데이터 정규화 작업에서 사용되는 경우가 많습니다. 여기에서는 문자열 비교에 관한 예제를 살펴보겠습니다.
문자열 비교
사용자가 입력한 문자열을 대소문자 구분 없이 비교해야 하는 경우, strtoupper()
함수를 사용하여 입력값과 비교할 값을 모두 대문자로 변환한 후 비교할 수 있습니다.
이 예제에서는 $user_input
이 "admin"이지만, 데이터베이스에 저장된 값이 "ADMIN"일 때도 대소문자 구분 없이 두 문자열이 동일한 것으로 간주됩니다. strtoupper()
를 사용하여 두 문자열을 비교함으로써 대소문자에 관계없이 올바른 비교가 가능합니다.
주의할 점
strtoupper()
함수를 사용할 때에는 다음의 내용을 참고하세요.
다국어 지원 문제
strtoupper()
함수는 기본적으로 ASCII 문자를 처리합니다. 그래서 영어를 비롯한 일부 언어에서는 제대로 동작하지만, 유니코드를 사용하는 다른 언어(예: 터키어의 ı와 같은 문자는 I로 변환되지 않음)에서는 예상치 못한 결과를 낼 수 있습니다.
ASCII(American Standard Code for Information Interchange) 문자는 영어 알파벳, 숫자, 일부 특수 기호 등의 문자들을 포함하고 있습니다.
알바벳만이 아닌 다국어 문자를 처리하려면 mb_strtoupper()
함수(다국어 문자열 변환용)를 사용하는 것이 좋습니다.
영향을 받는 문자만 대문자로 변환
strtoupper()
함수는 문자열의 알파벳 문자만 변환합니다. 한글, 숫자, 기호, 공백 등은 그대로 남아 있습니다.
원본 문자열 변경 없음
strtoupper()
함수는 입력된 문자열을 직접 변경하지 않고, 변환된 새로운 문자열을 반환합니다. 따라서 원본 문자열을 변경하고 싶다면, 반환된 값을 다시 변수에 할당해야 합니다.