Nette\Forms\Rules::validate PHP Méthode

validate() public méthode

Validates against ruleset.
public validate ( $emptyOptional = FALSE ) : boolean
Résultat boolean
    public function validate($emptyOptional = FALSE)
    {
        $emptyOptional = $emptyOptional || $this->isOptional() && !$this->control->isFilled();
        foreach ($this as $rule) {
            if (!$rule->branch && $emptyOptional && $rule->validator !== Form::FILLED) {
                continue;
            }
            $success = $this->validateRule($rule);
            if ($success && $rule->branch && !$rule->branch->validate($rule->validator === Form::BLANK ? FALSE : $emptyOptional)) {
                return FALSE;
            } elseif (!$success && !$rule->branch) {
                $rule->control->addError(Validator::formatMessage($rule, TRUE));
                return FALSE;
            }
        }
        return TRUE;
    }

Usage Example

Exemple #1
0
 /**
  * Performs the server side validation.
  * @return void
  */
 public function validate()
 {
     if ($this->isDisabled()) {
         return;
     }
     $this->cleanErrors();
     $this->rules->validate();
 }