문자열 함수(4)

· 11년 전 · 2010

substr() 함수부터  알아보겠습니다.

substr() 함수의 역할은

어떤 문자열을 주어진 시작점부터 주어진 길이만큼의 문자열을 추출하는 것으로 실제 프로그래밍할 때 종종 쓰이는 함수입니다.

그럼, substr() 함수를 적용한 간단한 예제를 보겠습니다.


<?
$string = "Truth is always exciting...";

$sub_string = substr($string, 0, 5);

echo("실행 결과 : $sub_string");
?>


위 예제 코드에서 볼 수 있는 것처럼 substr() 함수는 3개의 인자(parameter)를 가지는데, 첫 번재 인자는 substr() 함수를 적용할 대상 문자열을 의미하며, 두 번째 인자는 문자열을 추출할 시작점을 의미하며, 세 번재 인자는 추출할 문자열의 길이를 의미합니다.

여기 두 번째 인자의 경우 유의해야 할 점은 문자열의 맨 앞에서부터 추출하려면 두 번째 인자값을 '1' 이 아니라 '0' 으로 써주어야 합니다.

따라서, 위 예제 코드는 $sting 변수값 즉, "Truth is always exciting..." 문자열을 문자열의 맨 앞에서부터 5개의 문자(byte)만큼을 추출해서 $sub_string 함수에 저장하라는 의미겠죠.

위 예제 코드를 웹브라우저로 출력하면 다음과 같은 결과를 보실 수 있습니다.


실행 결과 : Truth


substr() 함수는 많이 쓰이기 때문에 사용법을 꼭 기억하시길 바랍니다.

다음으로 strlen() 함수에 대해서 알아보겠습니다.

strlen() 함수의 역할은

문자열의 길이를 구하는 함수로 사용법이 아주 간단합니다.

아래, strlen() 함수를 사용한 간단한 예제를 보겠습니다.


<?
$string = "Hi.. 미즐맨";

$string_len = strlen($string);

echo("실행 결과 : $string_len");
?>


위 예제 코드는 $string 변수에 저장된 "Hi.. 미즐맨" 문자열의 길이를 구한 뒤 그 길이값을 $string_len 변수에 저장하는 코드입니다.

문자열의 길이를 구할 때, 영문자나 숫자 및 기호는 1 문자(=1byte)당 1 씩 계산되어지며, 한글의 경우 1 문자(=2bytes)당 2 씩 계산되어집니다. (아시죠..^^)

따라서, 위 예제 코드를 웹브라우저로 확인하면 다음과 같은 결과가 나오겠죠.


실행 결과 : 11

|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

+
제목 글쓴이 날짜 조회
11년 전 조회 2,351
11년 전 조회 2,301
11년 전 조회 2,463
11년 전 조회 3,040
11년 전 조회 2,039
11년 전 조회 3,069
11년 전 조회 3,312
11년 전 조회 1,966
11년 전 조회 2,142
11년 전 조회 1,814
11년 전 조회 2,819
11년 전 조회 2,686
11년 전 조회 2,151
11년 전 조회 2,053
11년 전 조회 1,781
11년 전 조회 2,252
11년 전 조회 2,644
11년 전 조회 1,682
11년 전 조회 1,881
11년 전 조회 2,027
11년 전 조회 2,016
11년 전 조회 2,216
11년 전 조회 3,763
11년 전 조회 3,412
11년 전 조회 2,894
11년 전 조회 2,526
11년 전 조회 2,481
11년 전 조회 3,500
11년 전 조회 2,696
11년 전 조회 3,899
11년 전 조회 4,728
11년 전 조회 4,840
11년 전 조회 4,896
11년 전 조회 5,029
11년 전 조회 3,516
11년 전 조회 1.9만
11년 전 조회 2,481
11년 전 조회 2,243
11년 전 조회 2,209
11년 전 조회 2,000
11년 전 조회 2,152
11년 전 조회 1,996
11년 전 조회 1,810
11년 전 조회 2,211
11년 전 조회 1,928
11년 전 조회 1,864
11년 전 조회 2,157
11년 전 조회 2,043
11년 전 조회 1,845
11년 전 조회 2,011
11년 전 조회 1,998
11년 전 조회 2,013
11년 전 조회 2,122
11년 전 조회 1,721
11년 전 조회 1,801
11년 전 조회 1,972
11년 전 조회 1,837
11년 전 조회 1,869
11년 전 조회 1,800
11년 전 조회 1,754
11년 전 조회 1,839
11년 전 조회 2,452
11년 전 조회 1,789
11년 전 조회 2,076
11년 전 조회 1,958
11년 전 조회 1,732
11년 전 조회 1,748
11년 전 조회 1,819
11년 전 조회 1,813
11년 전 조회 2,365
11년 전 조회 5,248
11년 전 조회 2,329
11년 전 조회 2,039
11년 전 조회 2,471
11년 전 조회 8,673
11년 전 조회 2,206
11년 전 조회 3,428
11년 전 조회 2,256
11년 전 조회 2,194
11년 전 조회 2,494
11년 전 조회 1,984
11년 전 조회 1,966
11년 전 조회 1,977
11년 전 조회 2,024
11년 전 조회 2,650
11년 전 조회 2,001
11년 전 조회 2,258
11년 전 조회 2,066
11년 전 조회 5,727
11년 전 조회 1,748
11년 전 조회 2,153
11년 전 조회 2,593
11년 전 조회 2,102
11년 전 조회 6,408
11년 전 조회 4,522
11년 전 조회 6,075
11년 전 조회 1,925
11년 전 조회 2,289
11년 전 조회 2,493
11년 전 조회 2,380