IT_Programming/PHP

register_global 설정시 변수 받는법

JJun ™ 2007. 9. 30. 11:55

register_global을 off 로 할경우 그냥 받을수는 없습니다..

다만 아래와 같은 방법으로 설정이 가능 하긴 한데

보안상 변수를 $_GET['a'] 식으로 쓰도록 하는것이 좋을것 같습니다.

 

$_GET['a'] --> GET으로 넘어온 $a라는 변수..
$_POST['a']  --> POST로 넘어온 $a라는 변수..
$_SERVER['a'] --> ??
$_COOKIE['a']  --> 쿠기 변수 $a ??
$_ENV['a'] --> ??
$_REQUEST['a'] --> ??
$_FILE['a']['name']; --> $a라는 폼으로 올라온 첨부파일의 파일명 
$_FILE['a']['size']; --> $a라는 폼으로 올라온 첨부파일의 크기
$_SESSION['a']; --> 세션변수 $a
$HTTP_GET_VARS['a']; --> $_GET['a']과 동일? 전혀 차이 없음?
$HTTP_POST_VARS['a']; --> $_POST['a']과 동일? 전혀 차이 없음?

@extract($HTTP_GET_VARS);
@extract($HTTP_POST_VARS);
@extract($HTTP_SERVER_VARS);
@extract($HTTP_ENV_VARS);
--> 모든 변수들을 처리함? register_globals = on 같은 조건?

응용 예)
if($_GET)extract($_GET);
if($_POST)extract($_POST);
if($_COOKIE)extract($_COOKIE);
if($_SERVER)extract($_SERVER);
if($_ENV)extract($_ENV);
$PHP_SELF=$_SERVER[PHP_SELF];
$HTTP_REFERER=$_SERVER[HTTP_REFERER];
$REMOTE_ADDR=$_SERVER[REMOTE_ADDR];