일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Ajax
- JavaScript
- string
- file-upload
- composer-php
- Apache
- post
- Session
- variables
- HTML
- Regex
- 경영
- JSON
- 전략
- Forms
- 웹하드순위
- OOP
- date
- curl
- MySQL
- Arrays
- Linux
- jquery
- Laravel
- php
- 웹하드추천
- function
- 무료다운로드쿠폰
- UTF-8
- Today
- Total
개발! 딱 깔끔하고 센스있게!
PHP 의 새로운 입력 필 터 는 $GET 또는 $POST 배열 을 읽 지 않 습 니 다. 본문
PHP 5.2 에 좋 은 안전 함 수 를 추가 하 였 습 니 다.
'input filter' 라 고 해서 말 하지 않 았 습 니 다.
$name = $_GET['name'];
당신 은 지금 말 할 수 있 습 니 다.
$name = filter_input (INPUT_GET, 'name', FILTER_SANITIZE_STRING);
문자열 을 자동 으로 삭제 합 니 다.
그리고:
FILTER_SANITIZE_ENCODED
FILTER_SANITIZE_NUMBER_INT
FILTER_SANITIZE_EMAIL
FILTER_SANITIZE_URL
기다리다.
그래서 이것 은 매우 편리 한 안전 특성 이 므 로 나 는 그것 으로 완전히 전환 하고 싶다.
문 제 는...나 는 항상 $GET 와 $POST 배열 을 처리 하기 전에 다음 과 같이 이 를 처리 합 니 다.
$ GET ['name'] = '(기본 이름)';
그러나 filter input 는 $ GET 에 접근 할 수 없 는 것 같 습 니 다.
int (?) 형식의 'inpt GET' 를 읽 고 있 기 때 문 입 니 다.
$get 을 filter input 에서 읽 을 수 있다 면 다행 이 겠 지만:
$name = filter_input ( $_GET, 'name', FILTER_SANITIZE_STRING );
잘못 을 저 에 게 알려 주 십시오:
Warning: filter_input() expects parameter 1 to be long, array given.
누가 내 가 할 수 있 을 것 이 라 고 생각 할 수 있 겠 습 니까?
- manipulate the source of
INPUT_GET
(whereever it is) so that I can change its values before filter_input can read them - get filter_input to read
$_GET
부록:
Rich 는 "어쨌든 배열 을 바 꾸 는 이 유 는 당연히 프로그램 을 통 해 추 가 된 내용 이 아니 라 입력 하 기 를 바 라 는 것" 이 라 고 물 었 다.
이것 은 입력 된 변 수 를 미리 처리 할 수 있 는 매우 편리 한 곳 입 니 다.
예 를 들 어:
- set defaults (if $_GET['state'] = '' then $_GET['state'] = 'AL')
- do manual processing (delete all spaces, etc.)
- security (some of which will be done by filter_input now)
그리고 나 서 나 는 내 가 입력 변 수 를 받 았 을 때 이 변 수 는 안전 하고 효과 적 이라는 것 을 알 았 다.
물론 저 는 GET 배열 을 다른 배열 로 복사 하여 처리 할 수 있 습 니 다.
그러나 이것 은 불필요 한 절차 입 니 다.
I $GET 는 정상 적 인 작업 을 하 는 배열 이기 때문에 존재 하 는 시스템 배열 을 처리 하 는 것 이 의미 가 있 습 니 다.
대답 하 다.
filter var 와 filter var array 를 사용 하여 다시 배열 을 읽 도록 수 동 으로 강제 할 수 있 습 니 다.
$name = filter_var ( $_GET['name'], FILTER_SANITIZE_STRING );
'개발 스크랩 메모 > PHP' 카테고리의 다른 글
Cake PHP - 2.0: Cake mail 과 SMTP 설정 을 통 해 gmail 계 정 으로 이메일 을 보 내 는 방법 을 설정 합 니까? (0) | 2020.12.01 |
---|---|
MySQL 이나 PHP md5 함 수 를 사용 하 는 것 이 빠 릅 니 다 / 더 좋 은 것 은 무엇 입 니까? (0) | 2020.12.01 |
PHP 서버 에서 Android 로 이미지 가 져 오기 (0) | 2020.12.01 |
탄소 배출 일 기준 시간 대 형식 설정 (0) | 2020.12.01 |
PHP: 배열 의 첫 번 째 항목 과 마지막 항목 을 삭제 합 니 다. (0) | 2020.12.01 |