프로그래밍/PHP
[PHP] 메일 도메인 존재 여부 검사 (checkdnsrr 함수)
떨어지는 용
2017. 12. 6. 16:19
▶PHP 메일 도메인 존재 여부 검사 (checkdnsrr 함수)
▶설명
PHP 함수 중 하나인 checkdnsrr 함수는 IP 주소에 대응하는 DNS 레코드를 확인하는데 사용하는 함수입니다.
레코드가 발견되면 true, 발견되지 않으면 false를 반환합니다.
▶사용법
강조 처리된 부분만 필수 입력 사항입니다.
checkdnsrr(
호스트
, 종류 = 'MX')
▶레코드 종류
레코드 |
상세 설명 |
NS |
도메인의 네임서버 정보 |
MX |
도메인의 MX(Mail Exchanger) 서버 |
A |
호스트의 IP주소 |
CNAME |
별칭으로 부여된 canonical name |
SOA |
도메인의 start-of-authority정보 |
HINFO |
호스트의 CPU 정보와 운영체제 정보 |
MINFO |
메일박스와 메일 리스트 정보 |
PTR |
IP주소에 대한 호스트명 |
TXT |
호스트에 대한 텍스트 정보 |
UNIFO |
사용자 정보 |
ANY |
호스트에 관련된 모든 레크드들의 정보 |
출처: http://88240.tistory.com/71
▶예제
회원가입을 만들때 이메일로 가입을 많이 사용하는 편입니다.
이메일을 입력했을 때, 최소한에 확인으로 존재하는 메일 도메인 검사할 때 유용합니다.
<?php function domain_exists ( $email , $record = 'MX' ) { list ( $user , $domain ) = split ( '@' , $email ) ; return checkdnsrr ( $domain , $record ) ; } if(domain_exists('test@gmail.com')) { echo('This MX records exists; I will accept this email as valid.'); } else { echo('No MX record exists; Invalid email.'); } ?>