1. PHP 문자열 정의(초기화) 및 확장열
ㅇ 문자열 정의(초기화)
- 작은따옴표 : '문자열'
- 큰따옴표 : "문자열"
- Here Document (heredoc) : <<<
. 여러 행을 갖는 문자열도 가능
2. PHP 문자열 내 탈출문자열 사용
ㅇ 홑따옴표('') 내 대상 확장열 (2개)
- 홑따옴표 ' 그 자체일 경우 : \'
- 역슬래시 \ 일 경우 : \\
ㅇ 겹따옴표("") 내 대상 확장열 (8개)
- \n (줄바꿈), \r (캐리지리턴), \t (tab), \\ (역슬래시), \$ (dollar sign),
\" (큰따옴표), \0 .. \777 (8진수), \x0 .. \xFF (16진수)
3. 문자열 비교,길이,카운트 PHP 함수
ㅇ 문자열 비교
- strcmp() : 문자열 비교 (같으면, 0을 반환)
- strcasecmp() : 대소문자 구분 없이 문자열 비교 (같으면, 0을 반환)
ㅇ 문자열 길이
- strlen(string) : string 문자열의 길이
ㅇ 문자열 발생 카운트
- substr_count(string,substring,start,length) : string에서 substring의 발생 횟수
4. 문자열 위치,추출,치환 PHP 함수
ㅇ 문자열 내 부분 문자열 일치 확인
- strstr(), strpos(), substr_count()
ㅇ 문자열 위치
- strpos(string,find,start) : string 내 find를 start부터 찾아서 위치 반환
.. 인덱스는 0부터
ㅇ 문자열 추출
- (직후 문자열 추출)
. strstr(string,find,before_find) : string 내 find 직후부터의 문자열을 추출
.. 만일, before_find 가 true이면, find 직전까지의 문자열을 추출)
- (부분 문자열 추출)
. substr(string,start,length) : string 내 start 위치부터 length 만큼 추출
.. 인덱스는 0부터
ㅇ 문자열 치환
- (문자열 검색 후 치환)
. str_replace(find,replace,string,count) : string에서 find를 찾아 replace로 치환
- (문자열 위치/길이로 치환)
. substr_replace(string,replace,start,length)
.. string의 start 위치에 있는 문자열을 replace로 length 길이 만큼 치환 (0이면 삽입)
5. 문자열 변환 PHP 함수
ㅇ 문자열 ↔ 배열 변환
- 문자열 → 배열 요소 분리 : explode()
- 배열 요소 → 문자열 결합 : implode()/join()
ㅇ 대소문자 변환
- 대문자/소문자 변환 : strtoupper(), strtolower()
- 영단어 맨앞 문자 만 대문자 변환 : ucwords()
ㅇ HTML 태그 변환
- 특정 HTML 태그 문자의 엔터티 변환 : htmlspecialchars() ↔ htmlspecialchars_decode()
. 변환 대상 문자 5개 : &, ", ', <, >
. 형식 : htmlspecialchars(string,flags,charset,double_encode)
.. flags : 따옴표 지정 옵션
.. (ENT_COMPAT : default, 단지 겹따옴표 만 변환)
.. (ENT_QUOTES : 겹따옴표,홑따옴표 모두 변환)
.. (ENT_NOQUOTES : 어떤 따옴표도 변환 안함)
- 모든 HTML 태그의 엔터티 변환 : htmlentities() ↔ htmlentities_decode()
- 모든 HTML 태그(또는,PHP 태그)의 제거
. strip_tags(string $str [, string $allowable_tags ] )
.. $allowable_tags : 특정 태그들 만 지정 가능
ㅇ 문자 변환
- chr() ↔ ord()
. chr() : ASCII 문자 출력
. ord() : ASCII 번호 출력
ㅇ 문자셋 변환 : iconv()
- 例)
. $enc = mb_detect_encoding($str,array('UTF-8','ASCII','EUC-KR'
,'CP949','UHC')); // 배열로 열거한 문자셋 중 해당 문자셋 명칭을 반환
. $str = iconv($enc,'utf-8',$str);
6. 문자열 다듬기(공백문자 제거) PHP 함수
ㅇ trim(string [,charlist]) : 문자열 앞뒤 공백문자 제거
ㅇ ltrim(string [,charlist]) : 문자열 앞 공백문자 제거
ㅇ rtrim(string [,charlist]) 또는 chop(string [,charlist]) : 문자열 뒤 공백문자 제거
※ [참고]
- 제거 대상 공백문자 : 아래 6개 종류
. 공백문자(space),수평탭(\t),수직탭(\v),줄바꿈(\n),캐리지리턴(\r),NULL(\0)
- charlist : 제거 대상 문자들
- leading zero 제거하려면, : ltrim(변수명,'0')