프리랜서 웹디자이너 웹퍼블리셔RELATION

RELATION 로고

PHP 웹프로그래밍

[소스] PHP 변수처리법_extract()

2012.08.27
북마크 작성자 정보
php 함수중에 extract()가 존재한다.
사용방법은 extract($array)인데, 함수에 배열타입의 변수를 넣으면 된다.
그누보드에서

@extract($_GET);
@extract($_POST);
@extract($_SERVER);

로 사용하고 있었다.
이 함수의 역할은 배열속의 키값들을 변수화 시키는 것이다.

예로, 만약에 배열 a 속에 키값이 i, j 가 들어 있다고 가정하면
$a[i] = 1;
$a[j] = 2;
echo $a[i];
echo $a[j]; 결과: 1 2 출력.

여기서 extract()를 사용하면

$a[i] = 1;
$a[j] = 2;
extract($a);
echo $i;
echo $j; 결과 1 2 출력.

이렇게 가능하게 된다.

아직 나도 배우는 입장이다 보니 이것의 용도를 정확하게 알지는 못하겠다.
만약 위와 같이 $_GET, $_POST, $_SERVER 같은 전역변수에 사용하게 되면
보안상의 문제가 있다고 한다.(어떤 위험인지는 확실히는 모른다....)
그리고 또한 기존의 변수와 중복될 경우 문제가 발생한다.
그러므로 이 함수는 정확하게 알고 사용해야 할듯 싶다.



PHP코드 상단에 정의함.
extract($_POST);
extract($_GET);
최상단에 위치하면됨

이 포스트 공유하기

전체목록