>  기사  >  백엔드 개발  >  PHP 데이터 필터링 팁: filter_input_array 함수를 사용하여 사용자 입력을 일괄 검증하는 방법

PHP 데이터 필터링 팁: filter_input_array 함수를 사용하여 사용자 입력을 일괄 검증하는 방법

王林
王林원래의
2023-07-29 21:09:29849검색

PHP 데이터 필터링 팁: filter_input_array 함수를 사용하여 사용자 입력을 일괄 검증하는 방법

웹 개발에서 사용자 입력은 종종 신뢰할 수 없습니다. 데이터 보안과 무결성을 보장하려면 사용자 입력을 검증하고 필터링해야 합니다. PHP는 사용자 입력을 일괄적으로 검증하는 데 도움이 되는 filter_input_array 함수를 제공합니다.

filter_input_array 함수는 입력 유형(INPUT_GET, INPUT_POST, INPUT_COOKIE 등), 필터링 규칙 배열 및 배열을 입력으로 허용할지 여부(INPUT_GET이 기본 입력 유형)의 세 가지 매개변수를 허용합니다. 필터링된 배열을 반환하거나, 오류가 발생하면 false를 반환합니다.

다음은 filter_input_array 함수를 사용하여 사용자 입력을 일괄 확인하는 샘플 코드입니다.

<?php
// 设置输入过滤规则
$filters = array(
    'username'  => FILTER_SANITIZE_STRING,
    'email'     => FILTER_VALIDATE_EMAIL,
    'age'       => array(
        'filter'    => FILTER_VALIDATE_INT,
        'options'   => array('min_range' => 18, 'max_range' => 60)
    ),
    'website'   => array(
        'filter'    => FILTER_VALIDATE_URL,
        'flags'     => FILTER_NULL_ON_FAILURE
    )
);

// 获取过滤后的输入数据
$input = filter_input_array(INPUT_POST, $filters);

// 验证是否发生错误
if ($input === false) {
    die('输入数据验证失败!');
}

// 输出过滤后的输入数据
echo "用户名:" . $input['username'] . "<br>";
echo "邮箱:" . $input['email'] . "<br>";
echo "年龄:" . $input['age'] . "<br>";
echo "个人网站:" . ($input['website'] ?? '未填写') . "<br>";
?>

이 예에서는 4가지 입력 필터링 규칙을 설정합니다. 사용자 이름은 FILTER_SANITIZE_STRING을 사용하여 필터링되고 이메일은 FILTER_VALIDATE_EMAIL을 사용하여 확인되며 연령은 확인됩니다. FILTER_VALIDATE_INT 값 범위를 사용하여 설정하면 웹사이트는 FILTER_VALIDATE_URL을 사용하여 확인하고 실패할 경우 null을 반환합니다.

filter_input_array 함수를 호출하고 입력 유형을 INPUT_POST로 지정하면 사용자가 제출한 POST 데이터를 가져오고 동시에 필터링하고 확인할 수 있습니다. 입력이 검증에 실패하면 filter_input_array 함수는 false를 반환합니다.

검증이 통과된 후 필요에 따라 필터링된 데이터를 처리하고 사용할 수 있습니다. 샘플 코드에서는 필터링된 사용자 이름, 이메일, 연령 및 개인 웹사이트를 출력합니다.

filter_input_array 함수를 사용하여 사용자 입력을 일괄 검증하면 인증 코드 수를 효과적으로 줄이고 애플리케이션 보안을 강화하는 데 도움이 됩니다. 동시에 특정 요구 사항을 충족하기 위해 사용자 지정 필터링 규칙을 추가할 수도 있습니다.

요약하자면, filter_input_array 함수를 합리적으로 사용함으로써 사용자 입력에 대한 제어 및 보안을 향상시키고, 개발 시간과 코드 양을 줄이고, 애플리케이션의 신뢰성과 견고성을 향상시킬 수 있습니다.

이 기사가 filter_input_array 함수를 사용하여 사용자 입력을 일괄적으로 확인하고 웹 애플리케이션의 보안 및 안정성을 향상시키는 방법을 배우는 데 도움이 되기를 바랍니다.

위 내용은 PHP 데이터 필터링 팁: filter_input_array 함수를 사용하여 사용자 입력을 일괄 검증하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.