PHP에서 get_magic_quotes_gpc()
함수에 대해 읽었을 때 정말 혼란 스럽습니다.항상 _POST _GET 및 _COOKIE 변수에 stripslash를 사용해야합니까?
어디서나 기능이 더 이상 사용되지 않습니다 (example).
하지만 PHP 5.3의 기본 동작은 무엇입니까? 나는 magic_quotes_gpc
이 켜져 있는지 확인하고, 모든 스크립트가 시작될 때 POST
, GET
및 COOKIE
변수에 대한 모든 슬래시를 제거했습니다. 그래서 혼동하지 않습니다.
get_magic_quotes_gpc()
을 사용하여 추가 된 슬래시를 확인하지 않으면, 슬래시를 제거하면 PHP 5.3에서 슬래시가 추가되지 않으면 항상 잘못된 데이터가됩니다.
magic_quotes_gpc
내 서버 (PHP 5.2.17)에 켜져 순간
this
와 같은 혼란을 가지고, 그래서 슬래시를 제거해야합니다. 하지만 향후 PHP 버전을 준비하려면 어떻게해야합니까?
나중에 스크립트 시작 부분에서 런타임 중에 기본값을 어떻게 설정합니까? 그러나 기본값은 무엇입니까?
불행히도 해당 서버의 구성 파일에 쓰기 액세스 권한이 없습니다. magic_quotes_gpc()를 확인하는 함수를 작성했습니다. 그러나 PHP> 5.3에서 슬래시를 추가하는 것이 기본 동작이라고 말합니까? 그 점에 대한 참고가 있습니까? –
아니요, 'magic_quotes_gpc'가 활성화되어 있지 않으면 슬래시를 추가하는 것이 기본 동작이 아닙니다. 자신 만의'get_magic_quotes_gpc' 버전을 쓸 필요가 없습니다. 더 이상 사용되지 않습니다. –
"filter_input_array()"함수를 사용하기 시작했습니다. 이 함수는 값의 슬래시를 자동으로 제거합니다. 나는 http://www.php.net/manual/en/filter.filters.sanitize.php에 주어진 경고 텍스트를 얻지 못했다. 슬래시를 제거하는 필터 살생의 기본 동작입니까? 배열의 슬래시가 제거되지 않는 이유는 무엇입니까? 예를 들어''name [3] [to \ "ll] :" 따라서 슬래시는 제거되지만 키에는 적용되지 않습니다. 그러나 PHP 매뉴얼에서이 동작에 대한 설명을 찾을 수 없었습니다 ... –