ユーザが入力したメアドの検証をするために、アットマーク以降のドメイン部分を検証する。
<?php /** * Validate the mail address * * @author Yuki Matsukura * @version $Id: a2b2c6ff3d160a4c91fb39a45c2a32af27867684 $ */ class MailAddressValidator { /** * Validate the mailaddress MX record. * - Call this method after validating e-mail regex check. * - throws exception if the error is occured * * @param string $mail_address * @author Yuki Matsukura */ public static function validateMX($mail_address) { if(preg_match('/@(.*)$/', $mail_address, $matches)){ $domain = $matches[1]; if(checkdnsrr($domain, 'MX') === true){ return; } throw new Exception(sprintf('メールアドレスの@以降が間違っている可能性があります。(%s)', $mail_address)); } } }
Comments