때때로 문자열을 소문자에서 대문자로 변경하거나 대문자에서 소문자로 변경할 필요가 있습니다. 보통 문자열에 포함된 대문자를 소문자로 변경할 때가 대부분으로 문자열을 소문자로 통일해 개발 코드나 데이터베이스에서 검색하기 위한 인덱스로 쓰기 위함이 많겠습니다...

[ 1 ] 대문자 소문자 변경이 필요한 경우


i. 특정 문자열을 검색하기 위한 인덱스로 쓰는 경우 대소문자의 차이때문에 검색하지 못하는 경우를 방지하기 위함
ii. URL의 쿼리스트링으로 문자열을 변환해 사용할 경우 일반적으로 소문자로 변경하는 것이 권장됨

[ 2 ] 대문자 소문자 변환 방법


! 변환에 쓰이는 함수

1. strtolower()


// 모든 문자열을 소문자로 변환하는 함수

2. strtoupper()


// 모든 문자열을 대문자로 변환하는 함수

3. ucfirst()


// 첫번째 문자열만 대문자로 변환하는 함수로 문단의 시작 문자만 대문자가 필요한 경우 주로 쓰임

4. ucwords()


// 각각의 문자 중 첫글자만 대문자로 변환하는 함수로 제목 등을 강조하기 위한 문자열에 쓰이는 함수


 Example 
<?php
$test = 'abcDEF ghiJKL' // test 변수를 선언

$test1 = strtolower($test);
$test2 = strtoupper($test);
$test3 = ucfirst($test);
$test4 = ucwords($test);
?>



 Result 
abcdef ghijkl // $test1 출력 결과
ABCDEF GHIJKL // $test2 출력 결과
AbcDEF ghiJKL // $test3 출력 결과
AbcDEF GhiJKL // $test4 출력 결과



!! 변환에 쓰이는 또 다른 함수

5. mb_convert_case(문자열, 옵션, '인코딩 타입')


// 모든 문자열을 소문자 또는 대문자로 변환하거나 모든 단어의 첫글자를 대문자로 변환하는 함수

*선택 가능한 값

1) MB_CASE_LOWER // 모두 소문자로 변환


2) MB_CASE_UPPER // 모두 대문자로 변환


3) MB_CASE_TITLE // 모든 단어의 첫번째 문자를 대문자로 변환




 example 
<?php
$test = 'abcDEF ghiJKL' // test 변수를 선언

$test5 = mb_convert_case($test, MB_CASE_LOWER, 'UTF-8');
$test6 = mb_convert_case($test, MB_CASE_UPPER, 'UTF-8');
$test7 = mb_convert_case($test, MB_CASE_TITLE, 'UTF-8');
?>



 Result 
abcdef ghijkl // $test5 출력 결과
ABCDEF GHIJKL // $test6 출력 결과
AbcDEF GhiJKL // $test7 출력 결과