Skip to content

[레벨:28]id: ADMINPLAY
댓글 0 조회 수 5556 추천 수 0
?

단축키

이전 문서

다음 문서

+ - Up Down Comment Print
?

단축키

이전 문서

다음 문서

+ - Up Down Comment Print

<?
- register_globals = Off [Security, Performance]
; Global variables are no longer registered for input data (POST, GET, cookies,
; environment and other server variables). Instead of using $foo, you must use
; you can use $_REQUEST["foo"] (includes any variable that arrives through the
; request, namely, POST, GET and cookie variables), or use one of the specific
; $_GET["foo"], $_POST["foo"], $_COOKIE["foo"] or $_FILES["foo"], depending
; on where the input originates. Also, you can look at the
; import_request_variables() function.
; Note that register_globals is going to be depracated (i.e., turned off by
; default) in the next version of PHP, because it often leads to security bugs.
; Read http://php.net/manual/en/security.registerglobals.php for further
; information.

; register_globals = Off [보안 수행]
; 입력 데이터(POST, GET cookies) 와 서버형 변수들은 더이상 전역변수로 등록되지 않는다.
; $foo 란 변수를 사용할때 $_REAUEST["foo"] 로 사용 해야 한다.
; $_GET["foo"], $_POST["foo"], $_COOKIE["foo"] or $_FILES["foo"] 와 같이 사용

 

#####################################################################################
// php.ini 파일 에서 register_globals = on 시 변수형

$PHP_SELF;
$HTTP_REFERER;
$PATH_INFO;
$REMOTE_ADDR;

 

####################################################################################
// php 4.0 까지
// php.ini 파일에서 register_globals = off 시 변수형

$HTTP_SERVER_VARS[PHP_SELF];  // 현재 파일의 경로를 포함한 파일명을 보여줌
$HTTP_SERVER_VARS[HTTP_REFERER]; // 이전페이지의 URL 을 나타냄
$HTTP_SERVER_VARS[REMOTE_ADDR];  // 내 컴퓨터의 IP 주소를 나타냄
$HTTP_SERVER_VARS[SCRIPT_FILENAME]; // 해당 파일의 절대경로를 포함한 파일명을 보여주는 것입니다. /home/somedomain/a.php

$HTTP_GET_VARS[];     // HTTP 프로토콜에서 GET 방식으로 전송한 변수값
$HTTP_POST_VARS[];     // HTTP 프로토콜에서 POST 방식으로 전송한 변수값
$HTTP_FILES_VARS[];     // HTTP 프로토콜에서 파일 이름으로 전송한 변수값 [name][size][type]

// a.html?code=board&name=park 와 같은 스트링 값 까지 알아낼때
$url = $HTTP_SERVER_VARS["HTTP_REFERER"]."?".$HTTP_SERVER_VARS["QUERY_STRING"]

// register_globals_on 일때 변수 재 정의
@extract($HTTP_GET_VARS);
@extract($HTTP_POST_VARS);
@extract($HTTP_SERVER_VARS);
@extract($HTTP_ENV_VARS);


#####################################################################################
// php 4.1 부터
// php.ini 파일에서 register_globals = off 시 변수형
$_SERVER[PHP_SELF];
$_SERVER[SCRIPT_FILENAME]

$_POST[];
$_GET[];

$_SESSION['$member_id'];
$_COOKIE['$member_id'];

// a.html?code=board&name=park 와 같은 스트링 값 까지 알아낼때
$url = $_SERVER_VARS["HTTP_REFERER"]."?".$_SERVER_VARS["QUERY_STRING"]

// register_globals_on 일때 변수 재 정의
@extract($_GET);
@extract($_POST);
@extract($_SERVER);
@extract($_ENV);


#####################################################################################
$_POST와 $HTTP_POST_VARS는 차이

바뀌었습니다. long 타입이 예전부터 쓰이던 것이고, 짧은 타입은 4.1.0 이후로 생긴 것입니다.
두 배열은 같은 키와 같은 값을 가지고 있으므로 내용상 똑같습니다. 하지만 서로 다른 변수입니다.

결정적으로 이 둘이 다른 것은 짧은 타입의 경우 "자동전역(수퍼전역; SuperGlobal)변수"이지만 긴 타입은 그렇지 않다는 것입니다.
즉, $_POST는 함수선언에서 global $_POST; 로 선언하지 않고 사용이 가능하지만 $_HTTP_POST_VARS 는 선언을 해야만 전역으로 인식합니다.

짧은 형식이 '사용이 권장'되는 변수입니다. 긴 형식은 php-5.0 에서 php.ini에 의해 사라질 수 있습니다.

http://kr2.php.net/manual/kr/reserved.variables.php
http://kr2.php.net/manual/kr/language.variables.predefined.php
?>


번호 제목 글쓴이 날짜 조회 수
45 configure: error: utf8_mime2text() has new sign...   [레벨:28]id: ADMINPLAY 2010.05.18 5778
44 oracle10g + php5.2.11 error [OCIEnvNlsCreate(...   [레벨:28]id: ADMINPLAY 2010.02.24 7039
43 Warning: Unknown: open(, O_RDWR) failed: No...   [레벨:28]id: ADMINPLAY 2010.01.29 6192
» register_globals 에 따른 서버 변수형 변환   [레벨:28]id: ADMINPLAY 2010.01.09 5556
41 register_globals = off 란?   [레벨:28]id: ADMINPLAY 2010.01.09 5324
40 4.1.0이상 php 버전에서 register_globals = Off 일...   [레벨:28]id: ADMINPLAY 2010.01.09 5318
39 PHP FreeTDS 사용 (MS-SQL)  fileimage [레벨:28]id: ADMINPLAY 2010.01.05 6266
38 Fatal error: Call to undefined function domx...   [레벨:28]id: ADMINPLAY 2009.12.31 5397
37 pear 1.9 업그레이드 및 패치설치   [레벨:28]id: ADMINPLAY 2009.12.31 5268
36 PEC HTTP Setup   [레벨:28]id: ADMINPLAY 2009.12.31 5364
35 PHP.INI에서의 세션 관련설명   [레벨:28]id: ADMINPLAY 2009.10.19 6123
34 Maximum execution time of 30 seconds exceede...   [레벨:28]id: ADMINPLAY 2009.09.28 5704
33 php세션정리   [레벨:28]id: ADMINPLAY 2009.09.19 6117
32 Warning: flock(): supplied argument is not a va...   [레벨:28]id: ADMINPLAY 2009.09.09 5816
31 PHPMyAdmin - blowfish_secret 해결방법   [레벨:28]id: ADMINPLAY 2009.09.08 6082
30 php컴파일에러(flex) configure: error: cannot ...   [레벨:28]id: ADMINPLAY 2009.08.08 5872
29 PHP - eAccelerator 설치   [레벨:28]id: ADMINPLAY 2009.08.03 5433
28 Ubuntu 7.04 Server 에 Zend Optimizer 3.2.8 ...   [레벨:28]id: ADMINPLAY 2009.07.19 4708
27 SENDMAIL SPAMASSASSIN 관리 local.cf   [레벨:28]id: ADMINPLAY 2009.07.18 5011
26 PHP 언어디코딩   [레벨:28]id: ADMINPLAY 2009.07.18 5272
Board Pagination ‹ Prev 1 2 3 Next ›
/ 3
Designed by hikaru100

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

SketchBook5,스케치북5

SketchBook5,스케치북5

SketchBook5,스케치북5

SketchBook5,스케치북5

순위 출석시각 별명 당일기록
출석한 회원이 없습니다.

Copyright ADMINPLAY corp. All rights reserved.

abcXYZ, 세종대왕,1234

abcXYZ, 세종대왕,1234