이메일 주소의 2단계 처리 과정에서 빈칸에 들어갈 올바른 필터는?
이메일 주소의 2단계 처리 과정에서 빈칸에 들어갈 올바른 필터는?
$email = "user@domain.com<script>";
// 1단계: 불법 문자 제거
$email = filter_var($email, ___);
// 2단계: 이메일 형식 검증
if (!filter_var($email, ___) === false) {
echo "유효한 이메일";
} else {
echo "무효한 이메일";
}
정답: B
이메일 처리는 정제 후 검증 순서로 진행하여 안전하고 유효한 이메일을 확보해야 합니다.
⦁ 2단계 처리 과정:
1단계:
FILTER_SANITIZE_EMAIL
⦁ 이메일에 허용되지 않는 문자 제거
⦁
<script>
같은 위험한 태그 제거⦁ 결과:
user@domain.com
2단계:
FILTER_VALIDATE_EMAIL
⦁ RFC 표준에 따른 이메일 형식 검증
⦁ @ 기호, 도메인 형식 등 확인
⦁ 유효하면 원본 반환, 무효하면 false 반환
⦁ 처리 결과:
⦁ 입력:
user@domain.com<script>
⦁ 정제 후:
user@domain.com
⦁ 검증 결과: 유효한 이메일 (true)
⦁ 순서의 중요성:
⦁ 정제 먼저: 위험 요소 제거
⦁ 검증 나중에: 안전해진 데이터의 유효성 확인
💡 학습 팁
이 문제를 포함한 PHP 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.