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

PHP ctype_upper() 함수 완벽 가이드 – 대문자 검사 방법과 예제

PHP의 ctype_upper() 함수는 문자열이 모두 대문자로 이루어져 있는지 확인하는 함수입니다. 문자열 내 모든 문자가 현재 로케일(locale) 기준으로 대문자 알파벳이라면 TRUE를 반환하고, 하나라도 대문자가 아닌 문자가 포함되어 있다면 FALSE를 반환합니다.

문법 (Syntax)

ctype_upper(str)

매개변수 (Parameters)

  • str – 대문자 여부를 검사할 문자열입니다.

반환값 (Return)

문자열의 모든 문자가 현재 로케일에서 대문자 알파벳에 해당하면 TRUE를, 그렇지 않으면 FALSE를 반환합니다.

예제 1 – 배열 요소 검사하기

다음 예제는 배열에 담긴 여러 문자열을 순회하면서 각각 대문자로만 구성되어 있는지 확인합니다.

<?php
   $arr = array('9898jjhh', 'PQR', 'Amit');

   foreach ($arr as $demo) {
      if (ctype_upper($demo)) {
         echo "$demo has all uppercase letters. \n";
      } else {
         echo "$demo does not have all uppercase letters. \n";
      }
   }
?>

실행 결과

9898jjhh does not have all uppercase letters.
PQR has all uppercase letters.
Amit does not have all uppercase letters.

위 결과를 보면, 숫자와 소문자가 섞여 있는 '9898jjhh'와 소문자를 포함한 'Amit'은 FALSE를 반환하고, 전부 대문자인 'PQR'만 TRUE를 반환하는 것을 확인할 수 있습니다.

예제 2 – 단일 문자열 검사하기

이번에는 하나의 문자열을 직접 검사해 보겠습니다.

<?php
   $str = 'AUSTRALIA';

   if (ctype_upper($str)) {
      echo "Word has all uppercase characters!\n";
   } else {
      // FALSE일 경우 실행
      echo "Word does not have all uppercase characters!\n";
   }
?>

실행 결과

Word has all uppercase characters!

참고 사항

  • 빈 문자열을 검사하면 PHP 8.1 이전 버전에서는 FALSE, PHP 8.1부터는 항상 FALSE를 반환하므로 주의가 필요합니다.

  • ctype_upper()는 공백, 숫자, 특수문자가 포함된 경우에도 FALSE를 반환합니다. 오직 대문자 알파벳만으로 구성된 문자열만 TRUE를 반환합니다.

  • 검사 기준은 시스템의 현재 로케일 설정에 따라 달라질 수 있습니다.