반응형

문자열 길이 반환

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 : 변환될 내용
  • 리턴값
    • 변환된 내용
    • 변환되는 특수문자들
    • '&'(앰퍼샌드) : '&'
    • '"'(겹따옴표) : '"'가 됩니다.
    • '<'(미만) : '&lt;'
    • '>'(이상) : '&gt;'

줄바꿈

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

+ Recent posts