웹 애플리케이션을 개발할 때 양식은 사용자와 상호 작용하는 중요한 수단입니다. 사용자 입력을 적절하게 검증하는 것은 데이터 보안과 무결성을 보장하는 데 중요한 단계입니다. PHP는 사용자 입력을 보다 쉽고 효율적으로 검증하고 필터링할 수 있도록 filter_input 함수를 제공합니다. 이 글에서는 filter_input 함수를 사용하여 사용자 입력을 확인하는 방법을 소개하고 실용적인 코드 예제를 제공합니다.
filter_input 함수는 사용자 입력을 필터링하고 검증하는 데 사용되며 입력 유형(소스), 입력 이름 및 필터 유형의 세 가지 주요 매개변수를 허용합니다. 기본적인 예는 다음과 같습니다.
$input = filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL);
if ($input) {
echo '유효한 이메일 주소。';
} else {
echo '请输入一个유효한 이메일 주소。';
}예제에서는 filter_input 함수를 사용하여 POST 메서드를 통해 제출된 이메일 필드의 유효성을 검사합니다. FILTER_VALIDATE_EMAIL은 이메일 형식이 유효한지 확인하는 데 사용됩니다. 유효하면 "유효한 이메일 주소"가 출력되고, 그렇지 않으면 사용자에게 올바른 이메일 주소를 입력하라는 메시지가 표시됩니다.
filter_input은 다양한 유형의 입력을 검증하기 위해 여러 필터 유형을 지원합니다. 일반적으로 사용되는 필터는 다음과 같습니다.
$email = filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL);
if (!$email) {
echo '请输入一个유효한 이메일 주소。';
} $age = filter_input(INPUT_POST, 'age', FILTER_VALIDATE_INT);
if (!$age) {
echo '올바른 연령을 입력하세요.。';
} $url = filter_input(INPUT_POST, 'url', FILTER_VALIDATE_URL);
if (!$url) {
echo '유효한 값을 입력하세요.URL주소。';
} $name = filter_input(INPUT_POST, 'name', FILTER_SANITIZE_STRING);
if (!$name) {
echo '유효한 값을 입력하세요.姓名。';
}기본 제공 필터 외에도 사용자 입력의 유효성을 검사하는 사용자 지정 함수를 정의할 수도 있습니다. 사용자 정의 함수는 하나의 매개변수를 허용하고 확인 결과(true 또는 false)를 반환합니다. 예는 다음과 같습니다:
function validate_username($username) {
// 사용자 이름은 문자로 시작해야 합니다.,문자만 포함할 수 있습니다.、숫자와 밑줄
return preg_match('/^[a-zA-Z][a-zA-Z0-9_]*$/', $username);
}
$username = filter_input(INPUT_POST, 'username', FILTER_CALLBACK, array('options' => 'validate_username'));
if (!$username) {
echo '유효한 값을 입력하세요.用户名。';
}위의 예에서 verify_username 함수는 정규식을 사용하여 사용자 이름이 문자로 시작하고 문자, 숫자 및 밑줄만 포함하는지 확인합니다. 그런 다음 FILTER_CALLBACK 필터를 통해 사용자 정의 함수를 호출하여 사용자 입력의 유효성을 검사합니다.
이 기사에서는 기본 사용법, 일반적인 필터 유형 및 사용자 정의 함수 예제를 포함하여 사용자 입력 검증을 위해 PHP의 filter_input 함수를 사용하는 방법을 소개합니다. 사용자 입력의 유효성을 올바르게 검사하는 것은 데이터 무결성과 애플리케이션 보안을 보장하는 데 중요하며, 이러한 팁은 웹 애플리케이션의 품질과 사용자 경험을 개선하는 데 도움이 될 수 있습니다.