> 백엔드 개발 > PHP 튜토리얼 > 최신 PHP에서 이메일 주소를 안정적으로 검증하려면 어떻게 해야 합니까?

최신 PHP에서 이메일 주소를 안정적으로 검증하려면 어떻게 해야 합니까?

DDD
풀어 주다: 2024-12-11 17:23:11
원래의
501명이 탐색했습니다.

How Can I Reliably Validate Email Addresses in Modern PHP?

PHP의 이메일 유효성 검사: 최신 접근 방식

PHP로 작업할 때 데이터 무결성을 보장하려면 사용자 입력 유효성을 검사하는 것이 중요합니다. 일반적인 유효성 검사 작업 중 하나는 이메일 주소를 확인하는 것입니다. 다음은 PHP를 사용하여 이메일을 검증하는 간단하고 안정적인 방법입니다.

이메일 검증을 위해 filter_var() 활용

filter_var() 함수는 이메일 주소를 검증하는 편리한 방법을 제공합니다. :

$isValid = filter_var($email, FILTER_VALIDATE_EMAIL);
로그인 후 복사

이 함수는 입력 문자열이 유효한 이메일 주소이면 true를 반환하고 false를 반환합니다. 그렇지 않은 경우.

ereg() 지원 중단 및 preg_match()로 교체

이전 버전의 PHP에서는 ereg()가 정규식 일치에 사용되었습니다. 그러나 PHP 5.3 이상에서는 더 이상 사용되지 않으며 preg_match()로 대체되었습니다.

if (preg_match("/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/", $email)) {
    return true;
}
로그인 후 복사

이 정규식은 다음을 확인합니다.

  • 문자(a-z, 0-9, _ , -)
  • 마침표(.) 구분 문자
  • "@" 기호
  • 도메인 이름(문자와 유사한 문자 다음에 마침표(선택 사항) 및 2~3자로 구성된 TLD)

추가 고려사항

  • 사례 민감도: 이메일 주소는 대소문자를 구분하지 않습니다.
  • TLD 검증: 기본적으로 PHP의 filter_var()는 TLD(최상위 도메인)의 존재를 검증하지 않습니다. 도메인 이름에. 필요한 경우 정규식 검사를 추가할 수 있습니다.
  • 인코딩: 이메일에 ASCII가 아닌 문자가 포함될 것으로 예상되는 경우 IDNA 확장자 또는 기타 유니코드 인식 라이브러리 사용을 고려해 보세요.

위 내용은 최신 PHP에서 이메일 주소를 안정적으로 검증하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿