Mercurial > hg > isophonics-drupal-site
annotate vendor/egulias/email-validator/EmailValidator/EmailValidator.php @ 19:fa3358dc1485 tip
Add ndrum files
author | Chris Cannam |
---|---|
date | Wed, 28 Aug 2019 13:14:47 +0100 |
parents | af1871eacc83 |
children |
rev | line source |
---|---|
Chris@18 | 1 <?php |
Chris@18 | 2 |
Chris@18 | 3 namespace Egulias\EmailValidator; |
Chris@18 | 4 |
Chris@18 | 5 use Egulias\EmailValidator\Exception\InvalidEmail; |
Chris@18 | 6 use Egulias\EmailValidator\Validation\EmailValidation; |
Chris@18 | 7 |
Chris@18 | 8 class EmailValidator |
Chris@18 | 9 { |
Chris@18 | 10 /** |
Chris@18 | 11 * @var EmailLexer |
Chris@18 | 12 */ |
Chris@18 | 13 private $lexer; |
Chris@18 | 14 |
Chris@18 | 15 /** |
Chris@18 | 16 * @var array |
Chris@18 | 17 */ |
Chris@18 | 18 protected $warnings; |
Chris@18 | 19 |
Chris@18 | 20 /** |
Chris@18 | 21 * @var InvalidEmail |
Chris@18 | 22 */ |
Chris@18 | 23 protected $error; |
Chris@18 | 24 |
Chris@18 | 25 public function __construct() |
Chris@18 | 26 { |
Chris@18 | 27 $this->lexer = new EmailLexer(); |
Chris@18 | 28 } |
Chris@18 | 29 |
Chris@18 | 30 /** |
Chris@18 | 31 * @param $email |
Chris@18 | 32 * @param EmailValidation $emailValidation |
Chris@18 | 33 * @return bool |
Chris@18 | 34 */ |
Chris@18 | 35 public function isValid($email, EmailValidation $emailValidation) |
Chris@18 | 36 { |
Chris@18 | 37 $isValid = $emailValidation->isValid($email, $this->lexer); |
Chris@18 | 38 $this->warnings = $emailValidation->getWarnings(); |
Chris@18 | 39 $this->error = $emailValidation->getError(); |
Chris@18 | 40 |
Chris@18 | 41 return $isValid; |
Chris@18 | 42 } |
Chris@18 | 43 |
Chris@18 | 44 /** |
Chris@18 | 45 * @return boolean |
Chris@18 | 46 */ |
Chris@18 | 47 public function hasWarnings() |
Chris@18 | 48 { |
Chris@18 | 49 return !empty($this->warnings); |
Chris@18 | 50 } |
Chris@18 | 51 |
Chris@18 | 52 /** |
Chris@18 | 53 * @return array |
Chris@18 | 54 */ |
Chris@18 | 55 public function getWarnings() |
Chris@18 | 56 { |
Chris@18 | 57 return $this->warnings; |
Chris@18 | 58 } |
Chris@18 | 59 |
Chris@18 | 60 /** |
Chris@18 | 61 * @return InvalidEmail |
Chris@18 | 62 */ |
Chris@18 | 63 public function getError() |
Chris@18 | 64 { |
Chris@18 | 65 return $this->error; |
Chris@18 | 66 } |
Chris@18 | 67 } |