$form = new Zend_Form; $email = $form->createElement('text', 'email'); $email->setLabel('Email:') ->setRequired(true) ->addValidator('EmailAddress') ->addFilter('StringToLower'); $password = $form->createElement('password', 'password'); $password->setLabel('Password:') ->setRequired(true) ->addValidator('NotEmpty'); $form->addElement($email) ->addElement($password) ->addElement('submit', 'submit', array('label' => 'Login')); if ($form->isValid($_POST)) { // process login }
class My_Validate_Phone extends Zend_Validate_Abstract { const INVALID = 'invalid'; protected $_messageTemplates = array( self::INVALID => "Invalid phone number format" ); public function isValid($value) { $this->_setValue($value); if (!preg_match('/\([0-9]{3}\) [0-9]{3}-[0-9]{4}/', $value)) { $this->_error(self::INVALID); return false; } return true; } } $form = new Zend_Form; $phone = $form->createElement('text', 'phone'); $phone->setLabel('Phone:') ->setRequired(true) ->addValidator(new My_Validate_Phone()); $form->addElement($phone) ->addElement('submit', 'submit', array('label' => 'Submit')); if ($form->isValid($_POST)) { // process form }In both examples, Zend_Form is the package library used to create and validate the forms.