본문 바로가기

기초공부/WEB

[PHP]Superglobals, $_SERVER

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