[PHP] 슈퍼 글로벌 변수 $_SERVER
2022. 9. 17. 03:17ㆍProgram/PHP
067_PHP 슈퍼 글로벌 변수 $_SERVER
[요약]
- ip주소, 페이지 주소 등의 정보를 알려주는 슈퍼 글로벌 변수 $_SERVER 에 대해 알아보자
$_SERVER는 슈퍼 글로벌 변수 중 하나이다.
슈퍼 글로벌 변수는 PHP 자체적으로 내장된 변수이며 데이형은 배열이다.
인덱스값에 따라 여러 정보를 확인할 수 있다.
[$_SERVER 변수로 얼을 수 있는 정보]
인덱스 | 내용 |
PHP_SELF | 현재 실행 중인 파일의 경로와 파일명 표시 |
argv | 페이지에 전달된 데이터 표시 |
argc | 페이지에 전달된 데이터의 라인별 수 |
GATEWAY_INTERFACE | 서버가 사용 중인 CGI 버전 |
SERVER_ADDR | 현재 사용 중인 서버의 IP 주소 |
SERVER_NAME | 현재 사용 중인 서버의 호스트명 |
SERVER_SOFTWARE | 리스폰스헤더에 쓰여있는 서버의 소프트웨어 환경 |
SERVER_PROTOCOL | 페이지가 리퀘스트될 때의 프로토콜명과 버전 |
REQUEST_METHOD | 페이지에 엑세스할 때 사용된 리퀘스트의 메소드명 |
REQUEST_TIME | 리퀘스트가 개시된 때의 타임스탬프 |
REQUEST_TIME_FLOAT | 리퀘스트가 개시된 때의 타임스탬프(마이크로 초 표시) |
QUERY_STRING | 검색인수 표시 |
DOCUMENT_ROOT | 현재 실행 파일의 경로를 현재 사용 중인 시스템의 최상위 결로부터 표시 |
HTTP_CONNECTION | 현재 리퀘스트의 CONNECTION 헤더 내용 |
HTTP_HOST | 현재 리퀘스트의 HOST 헤더 내용 |
HTTP_REFERER | 현재 페이지 이전의 페이지 주소 |
HTTP_USER_AGENT | 페이지에 접속 중인 유저 에이전트의 표시 문자열 |
HTTPS | HTTPS 프로토콜을 이용해 실행되는 경우의 정보를 표시 |
REMOTE_ADDR | 현재 페이지를 보고 있는 유저의 아이피 주소 |
REMOTE_HOST | 현재 패이지를 액세스하고 있는 호스트명 |
REMOTE_PORT | 사용자의 기기에서 웹서버로 통신하는 포트 |
REMOTE_USER | 인증된 사용자 여부 |
SCRIPT_FILENAME | 현재 실행 중인 스크립트의 절대주소 |
SERVER_ADMIN | 웹서버 설정 파일의 SERVER_ADMIN에 설정된 값 |
SERVER_PORT | 웹서버의 통신포트(보통: 80) |
페이지에 접속한 사용자의 IP주소(회선에 부여된 숫자로 구성된 주소)를 알고자 한다면 다음의 코드를 사용한다.
$_SERVER['REMOTE_ADDR'];
페이지의 주소를 확인하려면 다음의 코드를 사용한다.
$_SERVER['PHP_SELF'];
다음은 $_SERVER 변수의 일부 값을 출력하는 예제이다.
[예제: 69_superGlobal.php ]
<?php
echo 'DOCUMENT_ROOT is ' . $_SERVER['DOCUMENT_ROOT'] . '<br>';
echo 'HTTP_ACCEPT_LANGUAGE is ' . $_SERVER['HTTP_ACCEPT_LANGUAGE'] . '<br>';
echo 'HTTP_HOST is ' . $_SERVER['HTTP_HOST'] . '<br>';
echo 'HTTP_USER_AGENT is ' . $_SERVER['HTTP_USER_AGENT'] . '<br>';
echo 'SERVER_PORT is ' . $_SERVER['SERVER_PORT'] . '<br>';
echo 'SCRIPT_NAME is ' . $_SERVER['SCRIPT_NAME'] . '<br>';
echo 'REQUEST_URI is ' . $_SERVER['REQUEST_URI'] . '<br>';
echo 'PHP_SELF is ' . $_SERVER['PHP_SELF'] . '<br>';
echo 'QUERY_STRING is ' . $_SERVER['QUERY_STRING'] . '<br>';
?>
실행결과
결과의 마지막에 있는 QUERY_STRING의 값은 현재 GET방식의 변수 정보가 없기 때문에 표시되지 않았다.
아래와 같이 URL 값에 GET방식의 변수가 붙어있다면 아래와 같이 출력되는 것을 확인할 수 있다.
위의 결과값은 name이라는 변수명으로 playdaddy라는 값을 보내는 것을 의미한다.
초보자를 위한 PHP 200제
김태영 지음 | 정보문화사
'Program > PHP' 카테고리의 다른 글
[PHP] include와 require를 한 번만 호출하기 (0) | 2022.09.17 |
---|---|
[PHP] 하나의 파일을 여러곳에서 사용하기 include, require (0) | 2022.09.17 |
[PHP] 파라미터(parameter)의 기본값 설정하기 (0) | 2022.09.17 |
[PHP] 함수에서 값 반환하기 return (0) | 2022.09.17 |
[PHP] 파라미터(parameter)와 아규먼트(argument) (0) | 2022.09.16 |