PHP 매뉴얼
이전 |  | 다음

# strtok

(PHP 3, PHP 4 , PHP 5)

strtok -- 문자열을 토큰화 합니다.

## 설명

string strtok ( string arg1, string arg2)

strtok()는 `arg2`안의 어떠한 문자를 기준으로 하여, 문자열(`arg1`)을 작은 문자열들(토큰)로 나눕니다. 즉, "This is an example string"이라는 문자열이 있을 때, 공백 문자를 사용하여 각각의 단어를 토큰으로 만들 수 있습니다.

예 1. strtok() 예제

`<?php $string = "This is\tan example\nstring"; /* 탭과 줄바꿈도 토큰화 문자열로 사용합니다. */ $tok = strtok($string, " \n\t"); while ($tok) { echo "단어=$tok<br />"; $tok = strtok(" \n\t"); } ?>`

처음 strtok를 호출할 때만 문자열 인자를 사용하는 점에 주의하십시오. 이후의 모든 strtok 호출은 토큰만 사용하며, strtok는 현재 문자열을 계속해서 추적합니다. 새로 시작하거나, 새로운 문자열을 토큰화 하려면 간단히 strtok를 그 문자열로 다시 초기화하십시오. 토큰 인자로 여러 문자를 넣을 수 있는 점에 주의하십시오. 문자열은 그 중의 어떠한 하나라도 발견하였을때 토큰이 됩니다.

빈 부분을 발견하였을때 동작이 PHP 4.1.0에서 바뀌었습니다. 이전의 동작은 빈 문자열을 반환하였지만, 새로운, 올바른 동작은 그 문자열 부분을 넘어갑니다.

예 2. 이전 strtok() 동작

`<?php $first_token = strtok('/something', '/'); $second_token = strtok('/'); var_dump($first_token, $second_token); ?>`

출력:

    string(0) ""
        string(9) "something"

예 3. 새로운 strtok() 동작

`<?php $first_token = strtok('/something', '/'); $second_token = strtok('/'); var_dump($first_token, $second_token); ?>`

출력:

    string(9) "something"
        bool(false)

토큰이 "0"일수 있는 점에 주의하십시오. 이는 조건문에서 `FALSE`로 판단합니다.

참고: split() explode().

이전 | 처음으로 | 다음
strstr | 위로 | strtolower