슈퍼 글로벌 변수
2015. 8. 7. 03:07ㆍ프로그래밍/ETC
728x90
728x90
정의
PHP에 미리 정의되어 있는 변수로써, 영역에 상관 없이 무조건 사용할 수 있는 전역 변수
종류
$_GLOBALS
$_SERVER
$_GET
$_POST
$_FILES
$_COOKIE
$_SESSION
$_REQUEST
$_ENV
* 모든 슈퍼전역변수들은 대소문자를 구분하니 반드시 대문자로 표기해야 한다.
$_GLOBALS
- 스크립트의 전역 유효 영역에서 쓸 수 있는 모든 변수에 대한 참조를 포함한다.
- 이 배열의 key는 전역 변수들의 이름이다.
즉 모든 글로벌 변수들은 $GLOBALS[index]라고 불리는 배열에 저장된다.
- PHP 3 버전 이후에 생긴 슈퍼전역변수이다.
$_SERVER
- 웹서버나 현재 스크립트의 실행 환경에 직접적으로 관련되어 설정되는 변수
- 헤더(header)와 패스(path), 스크립트 위치 등의 정보를 담고 있는 슈퍼 글로별 변수
- PHP 4.1.0부터 지원되며, 이전 버전에서는 $HTTP_SERVER_VALS를 사용한다.
$_GET
- HTTP GET에 의해 스크립트로 제공되는 변수
- HTML 폼에서 “get 방법으로 전달된 폼 데이터를 모으는 데 널리 사용되며,
또한 URL으로 보내진 데이터를 모으기 위해서도 사용된다.
- PHP 4.1.0부터 지원되며, 이전 버전은 $HTTP_GET_VARS을 사용한다.
$_POST
- HTTP GET에 의해 스크립트로 제공되는 변수
- HTML 폼에서 “get 방법으로 전달된 폼 데이터를 모으는 데 널리 사용되며,
또한 URL으로 보내진 데이터를 모으기 위해서도 사용된다.
- PHP 4.1.0부터 지원되며, 이전 버전은 $HTTP_GET_VARS을 사용한다.
다음 예제는 인풋(input)필드와 서브밋(submit) 버튼을 포함하고 있는 폼(form)이 있다.
사용자가 Submit 버튼을 눌러서 데이터를 전달하면,
<form> 태그에 있는 action 속성 안에 명시되어있는 파일로 폼 데이터가 보내진다.
다음 예제에서는 폼 데이터를 처리하기 위하여 현재 이 파일 자체로 전달하게 되었다.
만일 폼 데이터를 처리하기 위한 다른 PHP 파일을 사용하고 싶다면, 이 파일 이름을 변경하면 된다.
그 다음, 인풋 필드의 값을 모으기 위하여 $_POST 슈퍼 글로벌 변수를 사용하였다.
$_FILES
- HTTP post 파일 업로드에 의해 스크립트로 제공되는 변수
- PHP 4.1.0부터 지원되며, 이전 버전은 $HTTP_FILES_VARS을 사용한다.
$_COOKIE
- HTTP 쿠키(Cookie)에 의해 스크립트로 제공되는 변수
- PHP 4.1.0부터 지원되며, 이전 버전은 $HTTP_COOKIE_VARS을 사용한다.
$_SESSION
- 스크립트의 세션에 등록되는 변수
- PHP 4.1.0부터 지원되며, 이전 버전은 $HTTP_SESSION_VARS을 사용한다.
$_ENV
- 환경에 의해 스크립트로 제공되는 변수
- PHP 4.1.0부터 지원되며, 이전 버전은 $HTTP_ENV_VARS을 사용한다.
$_REQUEST
- GET, POST, COOKIE 입력 메커니즘을 통해 스크립트로 제공되는 변수
- HTML 폼으로부터 전달된 데이터를 모으는 데 이용된다.
- 명확하고 안전한 사용을 위해 $_REQUEST는 사용하지 않는 것이 좋다.
“$_REQUEST와 $_GET 또는 $_POST 중 하나를 사용해야 한다면, $_REQUEST를 사용하지 않는 것이 좋다.”
(출처 : http://stackoverflow.com/questions/1924939/php-request-vs-get-and-post)
다음 예제는 인풋(input)필드와 서브밋(submit) 버튼을 포함하고 있는 폼(form)이 있다.
사용자가 Submit 버튼을 눌러서 데이터를 전달하면,
<form> 태그에 있는 action 속성 안에 명시되어 있는 파일로 폼 데이터가 보내진다.
이 예제에서는 폼 데이터를 처리하기 위하여 현재 이 파일 자체로 전달하게 하였다.
만일 폼 데이터를 처리하기 위한 다른 PHP 파일을 사용하고 싶다면, 이 파일 이름을 변경하면 된다.
그 다음 인풋 필드의 값을 모으기 위하여 $_REQUEST 슈퍼 글로벌 변수를 이용하였다.
728x90
반응형
'프로그래밍 > ETC' 카테고리의 다른 글
[erlang] 순차 프로그래밍 (0) | 2015.12.16 |
---|---|
MySql 연결하기 (2) | 2015.08.27 |
딱딱한 페이지 그만(작성중) (2) | 2015.08.24 |
Unity - PHP 연결 (2) | 2015.07.28 |
DIB (0) | 2015.07.28 |
자료형 (1) | 2015.07.28 |
Derek Wilson, "더블 버퍼링(Double Buffering), vsync, 그리고 트리플 버퍼링(Triple Buffering)은 무엇인가?" (3) | 2015.06.23 |