개발 하다보면 다양한 문자열을 다양하게 바꾸거나 다루거나 체크하거나 변경을 할 일이 많이 발생한다.
치환을 할 때도 정규식을 이용해서 걸러낼때도 분리를 할때도 많이 다루게 된다.
PHP로 문자열을 다룰때 제공되고 있는 여러 함수를 이용을 하게 되고 찾아보게 된다.
몇가지를 알아보자.
php 문자열 자르기
substr
사용법 : substr( '스트링', '시작위치', '길이');
첫번째 파라메터는 대상이 될 문자 스트링
두번째는 잘릴 위치, 3번째는 자를 길이다.
제일 첫 위치가 1이아닌 0이므로 잘 생각해본다.
$str = 'ABCDEFGHJ';
$str_result = substr( $str, 3, 2);
=> DE
한글을 잘라보자. 한글은 바이트 계산을 해도 되지만 mb_substr을 이용하자.
사용법은 같다.
$str = '가나다라마바사';
$str_result = mb_substr( $str, 2,3);
=> 다라마
두번째 세번째 파라메터중 3번째는 삭제를 할 수 있다. 입력을 안하게 되면 지정 위치부터 끝까지 가져온다.
$str='오늘은 날씨가 매우좋습니다.';
$str_result = mb_substr( $str, 2 );
=>은 날씨가 매우좋습니다.
중간 파라메터의 - 값을 주게되면 뒤에서 기준이 틀려진다.
그 밖의 문자 함수로
str_replace : 문자열을 치환할 수 있다.
찾을 문자열, 바꿀 문자열, 대상문자열
$str = '오늘은 날씨가 매우 좋습니다.';
str_replace( '오늘', '내일', $str );
=> 내일은 날씨가 매우 좋습니다.
그 밖에 문자가 있는 위치를 찾을 때 strpos 없으면 -1값이 리턴됨
strlen
첫글짜 대문자 ucfirst 소문자를 모두 대문자로 strtoupper, 반대의 경우 strtolower,
explode는 주어진 문자로 잘라서 배열로 만든다
$str = 'AAAA#BBBBB';
$str_result = explode('#", $str ); //샵 기준으로 잘라라.
strcmp, strstr 등등 꽤 많이 있다.
한글과 관련해서 같은 함수의 mb_를 붙이거나 찾아서 찍어보면 대부분 해결할 수 있다.