PHP

extract 배열에서 현재 심볼 테이블로 변수를 입력

int extract ( array $var_array [, int $extract_type [, string $prefix ]] )

배열에서 현재 심볼 테이블로 변수를 가져옵니다.

extract()는 각 키가 유효한 변수명이 되는지 확인합니다. 심볼 테이블에 존재하는 변수와의 충돌 여부도 확인합니다.


인수

var_array
연관 배열. 변수명을 키로, 변수값을 값으로 취급한다. extract_type과 prefix 인수에 따라 각 키/값 쌍에 대해서 현재 심볼 테이블안에 변수를 생성한다.
연관 배열을 사용해야 합니다. 숫자 인덱스 배열은 EXTR_PREFIX_ALL이나 EXTR_PREFIX_INVALID를 사용하지 않는 한 결과를 생성하지 않습니다.

extract_type
유효하지않은/숫자 키와 충돌인 경우를 취급하는 방법은 extract_type에 의해 결정된다. 다음 값들 중 하나가 될 수 있다:

EXTR_OVERWRITE
충돌이 발생하면, 기존 변수를 덮어쓴다.
EXTR_SKIP
충돌이 발생하면, 기존 변수를 덮어쓰지 않는다. variable.
EXTR_PREFIX_SAME
충돌이 발생하면, prefix를 변수명 앞에 첨가한다.
EXTR_PREFIX_ALL
prefix를 모든 변수명 앞에 첨가한다.
EXTR_PREFIX_INVALID
유효하지 않은/숫자 변수명 앞에만 prefix를 첨가한다.
EXTR_IF_EXISTS
현재 심볼 테이블에 이미 존재하는 변수만 덮어쓴다. 그렇지 않으면 아무것도 하지 않는다. 이 플래그는 유효한 변수 목록을 정의하고 이 변수들만 추출하는데 유용하다. 예를 들어, 이런 변수는 $_REQUEST에서 정의된 변수들이다.
EXTR_PREFIX_IF_EXISTS
현재 심볼 테이블에 앞첨가된 버전의 같은 변수가 존재할때만 앞첨가된 변수명을 생성한다.
EXTR_REFS
변수를 참조로써 추출한다. 입력된 변수 값이 var_array 인수의 값을 참조한다는 의미를 갖는다. 이 플래그는 그 자체로나 다른 플래그와 OR 연산하여 extract_type에서 사용할수 있다.

extract_type가 설정되지 않으면, EXTR_OVERWRITE가 설정되어 있다고 가정한다.

prefix
prefix는 extract_type이 EXTR_PREFIX_SAME, EXTR_PREFIX_ALL, EXTR_PREFIX_INVALID, EXTR_PREFIX_IF_EXISTS일 경우에만 요구된다. 덧붙인 결과가 유효한 변수명이 아니면, 심볼 테이블에 입력되지 않는다. Prefix는 밑줄 문자로 배열 키와 자동으로 분리됩니다.


반환값
심볼 테이블에 성공적으로 입력된 변수의 수를 반환한다