From b8bb147f46cc9790326ce2440a13be06cc5a63bb Mon Sep 17 00:00:00 2001 From: Chris McCafferty Date: Sun, 3 Jul 2016 17:52:18 -0400 Subject: [PATCH] Added EmailValidatorInterface (#120) --- src/Egulias/EmailValidator/EmailValidator.php | 35 +++-------- .../EmailValidatorInterface.php | 62 +++++++++++++++++++ 2 files changed, 69 insertions(+), 28 deletions(-) create mode 100644 src/Egulias/EmailValidator/EmailValidatorInterface.php diff --git a/src/Egulias/EmailValidator/EmailValidator.php b/src/Egulias/EmailValidator/EmailValidator.php index 3b5e907..4325dd7 100644 --- a/src/Egulias/EmailValidator/EmailValidator.php +++ b/src/Egulias/EmailValidator/EmailValidator.php @@ -7,7 +7,7 @@ * * @author Eduardo Gulias Davis */ -class EmailValidator +class EmailValidator implements EmailValidatorInterface { /** * Critical validation errors used to indicate that @@ -113,26 +113,7 @@ public function __construct() } /** - * Validates an email address against the following standards: - * - * RFC-5321: Simple Mail Transfer Protocol - * RFC-5322: Internet Message Format - * RFC-6530: Overview and Framework for Internationalized Email - * RFC-6531: SMTP Extension for Internationalized Email - * RFC-6532: Internationalized Email Headers - * RFC-1123 section 2.1: Requirements for Internet Hosts -- Application and Support - * RFC-4291 section 2.2: IP Version 6 Addressing Architecture - * - * @param string $email The email address to validate. - * @param bool $checkDNS Whether or not the email address's hostname should - * be confirmed with a DNS lookup. This only comes - * into play if strict mode is also enabled. - * @param bool $strict If this is true, and any informational warnings - * were raised during validation, the email address - * will be considered invalid. Additionally, if - * $checkDNS is true and the DNS lookup failed, - * the email address will be considered invalid. - * @return bool + * {@inheritdoc} */ public function isValid($email, $checkDNS = false, $strict = false) { @@ -156,7 +137,7 @@ public function isValid($email, $checkDNS = false, $strict = false) } /** - * @return boolean + * {@inheritdoc} */ public function hasWarnings() { @@ -164,7 +145,7 @@ public function hasWarnings() } /** - * @return array + * {@inheritdoc} */ public function getWarnings() { @@ -172,7 +153,7 @@ public function getWarnings() } /** - * @return string + * {@inheritdoc} */ public function getError() { @@ -180,9 +161,7 @@ public function getError() } /** - * @param int $threshold - * - * @return EmailValidator + * {@inheritdoc} */ public function setThreshold($threshold) { @@ -192,7 +171,7 @@ public function setThreshold($threshold) } /** - * @return int + * {@inheritdoc} */ public function getThreshold() { diff --git a/src/Egulias/EmailValidator/EmailValidatorInterface.php b/src/Egulias/EmailValidator/EmailValidatorInterface.php new file mode 100644 index 0000000..7ac54f9 --- /dev/null +++ b/src/Egulias/EmailValidator/EmailValidatorInterface.php @@ -0,0 +1,62 @@ + + */ +interface EmailValidatorInterface +{ + /** + * Validates an email address against the following standards: + * + * RFC-5321: Simple Mail Transfer Protocol + * RFC-5322: Internet Message Format + * RFC-6530: Overview and Framework for Internationalized Email + * RFC-6531: SMTP Extension for Internationalized Email + * RFC-6532: Internationalized Email Headers + * RFC-1123 section 2.1: Requirements for Internet Hosts -- Application and Support + * RFC-4291 section 2.2: IP Version 6 Addressing Architecture + * + * @param string $email The email address to validate. + * @param bool $checkDNS Whether or not the email address's hostname should + * be confirmed with a DNS lookup. This only comes + * into play if strict mode is also enabled. + * @param bool $strict If this is true, and any informational warnings + * were raised during validation, the email address + * will be considered invalid. Additionally, if + * $checkDNS is true and the DNS lookup failed, + * the email address will be considered invalid. + * @return bool + */ + public function isValid($email, $checkDNS = false, $strict = false); + + /** + * @return bool + */ + public function hasWarnings(); + + /** + * @return array + */ + public function getWarnings(); + + /** + * @return string + */ + public function getError(); + + /** + * @param int $threshold The acceptable number of deprecation warnings. + * + * @return EmailValidator + */ + public function setThreshold($threshold); + + /** + * @return int + */ + public function getThreshold(); +}