이전 기사에서는 "PHP로 전자 메일 프로그램 파일을 작성하는 방법은 무엇입니까?"에 대해 소개했습니다. 》, 이 기사에서는 계속해서 PHP 필터가 무엇인지 소개합니다. 필터에는 어떤 종류가 있나요? 함께 가자!
PHP 필터란 무엇인가요?
PHP 필터는 안전하지 않은 소스의 데이터를 검증하고 필터링하는 데 사용됩니다.
사용자 입력 또는 사용자 정의 데이터를 테스트, 검증 및 필터링하는 것은 모든 웹 애플리케이션의 중요한 부분입니다.
PHP용 필터 확장은 데이터 필터링을 더 쉽고 빠르게 만들기 위해 설계되었습니다.
PHP 필터는 사용자 입력과 같은 비보안 소스의 데이터를 검증하고 필터링하는 데 사용됩니다.
필터를 사용하는 이유는 무엇인가요?
거의 모든 웹 애플리케이션은 외부 입력에 의존합니다. 이 데이터는 일반적으로 사용자 또는 기타 애플리케이션(예: 웹 서비스)에서 제공됩니다. 필터를 사용하면 애플리케이션이 올바른 입력 유형을 얻도록 할 수 있습니다.
외부 데이터는 항상 필터링해야 합니다!
입력 필터링은 가장 중요한 애플리케이션 보안 주제 중 하나입니다.
외부 데이터란 무엇인가요?
양식에서 데이터 입력
쿠키
웹 서비스 데이터
서버 변수
데이터베이스 쿼리 결과
함수 및 필터
필터하려면 변수를 사용하려면 다음 필터 함수 중 하나를 사용하세요.
filter_var() - 지정된 필터로 단일 변수 필터링
filter_var_array() - 동일하거나 다른 필터로 필터링 filter_input_array - 여러 입력 변수를 가져와 필터링 동일하거나 다른 필터 사용
아래 예에서는 filter_var() 함수를 사용하여 정수를 확인합니다.
<?php $int = 123; if(!filter_var($int, FILTER_VALIDATE_INT)) { echo("不是一个合法的整数"); } else { echo("是个合法的整数"); } ?>코드 실행 결과는 다음과 같습니다.
validating 필터 :
사용자 입력을 검증하는 데 사용됩니다.
엄격한 서식 규칙 (예 : URL 또는 이메일 유효성 검증) 성공하면 예상 유형, 실패하면 FALSE를 반환합니다.
필터마다 옵션과 플래그가 다릅니다.
아래 예에서는 "min_range" 및 "max_range" 옵션과 함께 filter_var()를 사용하여 정수의 유효성을 검사합니다.
<?php $var=300; $int_options = array( "options"=>array ( "min_range"=>0, "max_range"=>256 ) ); if(!filter_var($var, FILTER_VALIDATE_INT, $int_options)) { echo("不是一个合法的整数"); } else { echo("是个合法的整数"); } ?>
정수는 "300"이므로 지정된 범위에 속하지 않으므로 위 코드의 출력은
여러 입력 필터링
양식은 일반적으로 여러 입력 필드 구성으로 구성됩니다. filter_var 또는 filter_input 함수에 대한 반복 호출을 방지하려면 filter_var_array 또는 filter_input_array 함수를 사용할 수 있습니다.
<?php $filters = array ( "name" => array ( "filter"=>FILTER_SANITIZE_STRING ), "age" => array ( "filter"=>FILTER_VALIDATE_INT, "options"=>array ( "min_range"=>1, "max_range"=>120 ) ), "email"=> FILTER_VALIDATE_EMAIL ); $result = filter_input_array(INPUT_GET, $filters); if (!$result["age"]) { echo("年龄必须在 1 到 120 之间。<br>"); } elseif(!$result["email"]) { echo("E-Mail 不合法<br>"); } else { echo("输入正确"); } ?>결과는 다음과 같습니다:
예제 설명:
위에 세 가지 예가 있습니다. "GET" 메소드에 의해 전달된 입력 변수(이름, 나이 및 이메일) 전달:
입력 변수의 이름과 지정된 입력 변수에 대한 필터를 포함하는 배열을 설정합니다.
filter_input_array() 함수를 호출하고, 매개변수에는 GET 입력 변수가 포함되며 방금 set
배열은 $result 변수의 "age" 및 "email" 변수에 잘못된 입력이 있는지 감지합니다. (잘못된 입력이 있는 경우 filter_input_array() 함수 사용 후 입력 변수는 FALSE입니다.)filter_input_array() 함수의 두 번째 매개 변수는 배열이거나 단일 필터의 ID일 수 있습니다.
매개변수가 단일 필터의 ID인 경우 지정된 필터는 입력 배열의 모든 값을 필터링합니다.
매개변수가 배열인 경우 배열은 다음 규칙을 따라야 합니다.
연관 배열이어야 하며, 여기에 포함된 입력 변수는 배열의 키입니다(예: "age" 입력 변수).
이 배열 값은 필터의 ID이거나 필터, 플래그 및 옵션을 지정하는 배열이어야 합니다
권장 학습: "PHP 비디오 튜토리얼"
위 내용은 PHP 필터란 무엇입니까? 필터에는 어떤 종류가 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!