- <?php
- function stripslashes_deep($value)
- {
- $value = is_array($value) ?
- array_map('stripslashes_deep', $value) :
- stripslashes($value);
- return $value;
- }
- if((function_exists("get_magic_quotes_gpc")
- && get_magic_quotes_gpc())
- || (ini_get('magic_quotes_sybase')
- && (strtolower(ini_get('magic_quotes_sybase'))!="off")) ){
- stripslashes_deep($_GET);
- stripslashes_deep($_POST);
- stripslashes_deep($_COOKIE);
- }
- ?>
--------------------------------------------------------------------------------------------
bool get_magic_quotes_gpc ( void )
magic_quotes_gpc 옵션을 현재 구성 설정을 반환
magic_quotes_gpc 옵션을 실행시에하는 것은 작동하지 않을 것을 염두에 두고 설정을 시도하는 것
대한 자세한 내용은 magic_quotes의 보안섹션 참조
PHP 5.4.0은 항상 FALSE 반환
보통 Query문을 만들기 전에 addslash()를 써서
I'm boy 를 I\'m boy 와 같은 형태로 이스케이프 시키게 되는데....
php.ini 설정에 magic_quotes 설정이 on되어 있는 경우
Get, Post, Cookie가 전달시에 자동으로 이스케이프를 하므로
addslash()를 하면 중복 이스케이프하게 된다.
그래서 magic_quotes 설정이 on되어 있는지 확인하는 것이
바로 get_magic_quotes_gpc() 함수임