Loading

블로그채널

Search !

[PHP] 강좌 #7 문자열 함수 String Function


이전 시간에 클래스를 다루겠다고 이야기를 해왔는데요, 저번 강좌에 클래스가 들어가서 그런지 어렵게 느껴진 모양입니다. 클래스는 추후에 기회가 되면 설명하기로 하고 진도에 맞추어 쉬운 문자열을 다루어 보겠습니다. 


웹환경에서 아이디, 비밀번호 등을 입력받는 형태가 문자열입니다. 게시물 제목도 문자열이고 글 내용 또한 HTML 파일로 되어 있는 문자열입니다. 그림 또한 그림의 위치하는 주소값, 즉 문자열로 처리 됩니다. 이처럼 문자열을 많이 다루기 때문에 문자열 관련 함수를 알아두는 것이 많은 도움이 될 것입니다.


PHP String Functions

문자열 함수에 대해서 살펴보겠습니다.

 

예제는 아래의 사이트를 참조하세요.

http://www.w3schools.com/php/php_string.asp

 

[PHP] 강좌 #7 문자열 함수 String Function

[PHP] 강좌 #7 문자열 함수 String Function

 


 

길이를 알고 싶을 때

 

echo strlen("Hello world!"); // outputs 12

 

strlen은 string length에서 따온 말로 문자열 길이를 알고자 할 때 사용합니다.

 

단어 개수를 알고 싶을 때

 

echo str_word_count("Hello world!"); // outputs 2

str_word_count는 단어 개수를 리턴해줍니다. 함수 이름에 언더바가 있는 것이 마음에 들지는 않네요.

 

 

문자열을 뒤집고 싶을 때

 

echo strrev("Hello world!"); // outputs !dlrow olleH

 

strrev는 string reverse에서 따온 말로 문자열을 뒤집을 때 사용합니다.

 

 

해당 단어(문자열)의 위치를 알고 싶을 때

 

echo strpos("Hello world!", "world"); // outputs 6

 

strpos은 string postion에서 온 것으로 찾고자하는 해당 단어가 있을 때는 그 시작 위치를 알려줍니다. 위 예제에서 "Hello world!"안에 "world"의 위치는 6번째 위치합니다. 따라서 6이 리턴됩니다. 순서는 1부터 시작하는 것이 아니라 0부터 시작합니다. 만약에 해당 단어(문자열)가 없다면 false(거짓)값을 리턴합니다.

 

 

문자열 안에 특정한 문자열을 변경하고 싶을 때

 

echo str_replace("world", "Money", "Hello world!"); // outputs Hello Money!

 

예를 들어 "Hello world!"라는 문자열을 "Hello Money!"라고 바꾸고 싶습니다. 그럴 때 사용할 수 있는 함수가 str_replace입니다. 찾고자하는 문자열을 첫 인자값에 넣고 두번째 인자값에 변경할 문자열을 넣습니다. 세번째 인자값에 원본 문자열을 넣으면 됩니다.

 

내용이 문자열 함수 사용법이라 어렵지 않았을 것으로 생각듭니다. 이외에도 많은 문자열 함수가 제공되는데요, 아래 주소에 문자열 함수가 소개되어 있습니다.

 

http://www.w3schools.com/php/php_ref_string.asp

 

여러분이 예를 들어 알베르트 아인슈타인의 영문 정보를 얻기 위해 이름을 복사해 " albert einstein "라고 검색했다고 가정합시다. 스페이스키가 2개 포함되어 매칭되지 않는다고 하면 여러분은 화가 치밀어 오를지도 모르겠네요. 실제로 사이트를 돌아다니다 보면 빈공백이 들어갔다고 검색이 안되는 사이트가 존재합니다. 그 사이트 개발자 만나서 때려주고 싶습니다. 왜 이렇게 거지발싸개처럼  만들어서 사용자에게 불편을 주느냐고 말이죠.

 

 

공백 제거 함수

 

공백을 제거하기 위해 사용하는 함수가 trim입니다. 바리깡은 프랑스말이고 trimmer라고 쓰기도 합니다. trim이 어떤 의미인지 아실거라 생각드네요.

 

$str = " Hello World! ";
echo trim($str);

 

위 예문처럼 trim을 사용하면 앞 뒤 공백이 없어져 "Hello World!"만 남게 됩니다.

 

이번 시간에 다룬 문자열 함수는 단순해서 어렵지 않았을 것이라 사료됩니다. 다음 시간에도 쉬운 주제인 define문에 대해 살펴볼 것입니다. 읽으신다고 수고하셨습니다. ^^

 

[Copyright ⓒ 블로그채널 무단전재 및 재배포 금지]