le blog technique de la team weedo
I wrote a simpler email validator for Zend. Here it is :
namespace Weedo\Validate; /** * Weedo EmailAddress Validator class. * * @author http://twitter.com/kaweedo */ class EmailAddress extends \Zend_Validate_Abstract { const INVALID = 'emailAddressInvalid'; protected $_messageTemplates = array( self::INVALID => "Email is not valid" ); /** * isValid function. * Defined by Zend_Validate_Interface * * Returns true if and only if $value is a valid email address * according to RFC2822 * * @access public * @link http://php.net/manual/en/function.filter-var.php * @param string $value * @return boolean */ public function isValid($value) { if(filter_var($value, FILTER_VALIDATE_EMAIL) === false) { $this->_error(self::INVALID); return false; } else { // We only check the presence of a dot on the domain part $components = explode("@", $value); $domain = $components[1]; if (strpos($domain, ".") === false) { $this->_error(self::INVALID); return false; } return true; } } }
Usage example :
$emailAddressValidator = new Weedo\Validate\EmailAddress(); /* $emailAddressValidator = new Zend_Validate_EmailAddress(); too complicated */ $this->addElement( 'text', 'email', array( 'placeholder' => ucfirst($this->getTranslator()->translate('Your email'))."*", 'required' => true, 'validators' => array( array('NotEmpty', true, array('messages' => $this->getTranslator()->translate('Email is mandatory'))), array($emailAddressValidator,true), ), ) );
source :
http://www.electrictoolbox.com/php-email-validation-filter-var/
http://php.net/manual/en/function.filter-var.php
Comments 0 Comments