반응형
문자열 길이 반환
int mb_strlen ( string $string [, string $encoding='utf-8' ] )
- 문자수의 길이를 반환한다. (글자수)
- $string : 길이를 검사할 문자열
- $encoding : 인코딩 형식 (“UTF-8” or “EUC-KR”)
- 생략시 header() 함수에서 설정한 인코딩 형식을 따름
- 문자열이 비어 있다면 0이 리턴 된다.
특정 문자열 위치 검색
int mb_strpos ( string $string , string $find [, int $start=0 [, string $encoding='utf-8' ]] )
- $string에서 $find가 처음 나타나는 위치를 반환한다.
- $string : 탐색할 문자열 원본
- $find : 찾을 문자열
- start : string에서 몇 번째 문자부터 탐색을 시작할 지 결정한다.
- 반환하는 위치는 0부터 센다. 지정하지 않을 경우 0부터 시작한다.
- $encoding : 인코딩 형식 (“UTF-8” or “EUC-KR”)
- 생략시 header() 함수에서 설정한 인코딩 형식을 따름
- 위치를 정수로 반환한다.
- $find를 발견하지 못하면 mb_strpos()는 boolean값인 FALSE를 반환한다.
문자열 위치가 0인 경우, 찾지 못한 경우
$string = "PHP 프로그래밍"; $p1 = mb_strpos($string, "PHP"); $p2 = mb_strpos($string, "JSP"); if ($p2 === FALSE) { echo("문자열을 찾지 못했습니다."); }
- PHP는 0과 FALSE를 동일하게 처리하기 때문에, 리턴값이 숫자 0인 경우와 FALSE가 서로 다른 의미인 경우, “==“ 연산자로 비교하면 원치 않는 결과를 얻을 수 있다.
- if문의 조건식에서 “=”을 3개로 사용하면 데이터 형까지 동일해야만 조건을 참으로 인식하므로, 0과 FALSE를 구별할 수 있다.
대문자 변환
string mb_strtoupper ( string $string [, string $encoding='utf-8' ] )
- string의 모든 알파벳 문자를 대문자로 바꾼 문자열을 반환한다.
- $string : 대문자로 변환할 원본 문자열
- $encoding : 인코딩 형식 (“UTF-8” or “EUC-KR”)
- 생략시 header() 함수에서 설정한 인코딩 형식을 따름
소문자 변환
string mb_strtolower ( string $string [, string $encoding='utf-8' ] )
- string의 모든 알파벳 문자를 소문자로 바꾼 문자열을 반환한다.
- $string : 소문자로 변환할 원본 문자열
- $encoding : 인코딩 형식 (“UTF-8” or “EUC-KR”)
- 생략시 header() 함수에서 설정한 인코딩 형식을 따름
문자열 자르기
string mb_substr ( string $string, int $start [, int $length [, string $encoding='utf-8' ]] )
- $string의 $start 위치부터 $length 글자 수 만큼 잘라낸 내용을 리턴한다.
- $string : 원본 문자열
- $start : 문자열을 자르기 위한 시작 위치. 0부터 시작된다.
- $length : 잘라낼 문자열의 길이. 지정되지 않을 경우 끝까지 자른다.
- $encoding : 멀티바이트인 경우 “UTF-8”로 사용.
- 잘라낸 내용을 리턴해준다.
- mb_substr(“PHP 웹 프로그래밍”, 4, 1) 로 지정할 경우 4번째 위치부터 한 글자를 잘라내기 때문에 “웹”이 리턴된다.
반응형
출력형식
여러 변수의 결합
int printf ( string $format, mixed $args [, mixed $args… ] )
- 두 번째 파라미터부터 마지막 파라미터까지의 변수들을 $format의 형식에 맞추어 출력한다.
- $format : 치환자를 포함한 문자열 형식
- %d - 인수를 정수로 취급하고, 10진수로 표현합니다.
- %f - 인수를 소수로 취급하고, 부동소수점 수로 표현합니다.
- %s - 인수를 문자열로 취급하고 표현합니다.
- $args : $format에 포함된 치환자에 대입될 변수값.
- 개수 제한 없이 전달할 수 있다.
- 출력된 글자 수가 리턴된다.
string sprintf ( string $format, mixed $args [, mixed $args… ] )
- printf()는 자신이 직접 결합된 결과를 출력하지만, sprintf()는 결합된 결과를 리턴 한다는 차이가 있다.
앞뒤 공백제거
string trim ( string $string )
- 파라미터로 전달된 문자열의 앞,뒤 공백을 삭제하고 리턴한다
문자열 치환
string str_replace ( string $search, string $replace, string $subject )
- subject에서 발견한 모든 search를 주어진 replace 값으로 치환한 문자열을 반환한다.
- $search : 변경될 대상
- $replace : $search를 치환할 값
- $subject : $search를 포함하고 있는 원본 문자열
- 처리 결과 문자열을 리턴한다.
HTML 특수문자 처리
string htmlspecialchars ( string $string )
- HTML에서 사용되는 특수문자를 변환한다.
- $string : 변환될 내용
- 리턴값
- 변환된 내용
- 변환되는 특수문자들
- '&'(앰퍼샌드) : '&'
- '"'(겹따옴표) : '"'가 됩니다.
- '<'(미만) : '<'
- '>'(이상) : '>'
줄바꿈
string nl2br ( string $string )
- 모든 줄바꿈 앞에 '<br />'이나 '<br>'를 삽입한 string을 반환한다.
- <textarea> 태그 영역 안에서 사용자가 입력한 줄 바꿈 문자는 “\n”으로 저장된다.
- 이 상태에서 화면에 출력하면, 줄 바꿈 문자를 인식하지 못하는 HTML의 특성 때문에 정상적인 결과 확인이 어렵다.
- 이 함수를 적용한 결과를 화면에 출력할 경우 사용자가 입력한 줄 바꿈 문자를 정상적으로 화면에 출력할 수 있다.
- 파라미터
- $string : 변환될 원본 문자열
주민번호에서 생년월일, 성별 출력
<? header("Content-Type: test/html; charset=UTF-8"); $jumin = " 9611151000123 "; $jumin = trim($jumin); $yy = mb_substr($jumin, 0, 2); $mm = mb_substr($jumin, 2, 2); $dd = mb_substr($jumin, 4, 2); $gencode = mb_substr($jumin, 6, 1); $gender = "남자"; if($gencode=='1' || $gencode=='2') { $yy = sprintf('19%s', $yy); } else { $yy = sprintf('20%s', $yy); } if($gencode=='2' || $gencode=='4') { $gender = "여자"; } printf("<h1>%s년%s월%s일-%s</h1>", $yy, $mm, $dd, $gender); ?>
반응형
'프로그래밍 언어 > PHP' 카테고리의 다른 글
[PHP] 배열 함수 (0) | 2020.12.27 |
---|---|
[PHP] PHP 설치하기 (0) | 2020.12.23 |