Superglobals
모든 지역에서 접근 가능한 내장함수이다. 함수나 메소드에서 변수에 접근하기 위해 global $variable;라고 선언할 필요가 없다.(정확한 내용은 밑의 사이트 참고)
Superglobals는 다음과 같다.
$GLOBALS |
$_SERVER |
$_GET |
$_POST |
$_FILES |
$_COOKIE |
$_SESSION |
$_REQUEST |
$_ENV |
$_SERVER
header, paths, script locations 같은 배열 포함 정보이다. 이 배열의 엔트리는 웹서버에 의해서 생성되는데 반드시 생성될 것이라는 보장은 없다. 생략하거나 리스트로 제공하지 않을 수 있기 때문이다.
$_SERVER의 요소는 다음과 같다.(일부만 적음)
HTTP_USER_AGENT | 현재 페이지에 접속하는 user-agent를 나타내는 문자열 user-agent string이란 브라우저가 접속하는 웹서버에게 자신을 식별하라고 보내는 텍스트 |
REMOTE_ADDR | 현재 페이지를 보고있는 사용자의 IP 주소 |
REMOTE_HOST | 현재 페이지를 보고있는 사용자가 host 이름 |
REMOTE_PORT | 웹서버와 통신하는 사용자의 기계가 사용하는 포트 |
REMOTE_USER | 인증된 사용자 |
공부하면서 알게 된 건데 환경변수 $REMOTE_ADDR은 "사용자가 현재 페이지를 보고 있는 시스템의 IP 주소"이다. 주의할 것! 출처는 밑에 정리했다.
'기초공부 > WEB' 카테고리의 다른 글
[Flask]빠르게 시작하기 - 기본 애플리케이션 (0) | 2019.05.20 |
---|---|
SQL INJECTION (0) | 2019.05.13 |
[PHP]getenv (0) | 2019.05.06 |
[PHP]쿠키cookie (0) | 2019.04.05 |
[JavaScript]eval (0) | 2019.04.05 |