/** * Validates the values in the $values array and appends messages to $messageStack. Returns the result as a bool. * * @param MessageStack $messageStack * @param Container $input * @param Container $output * @return bool */ public function validate(MessageStack $messageStack, Container $input, Container $output) { $valid = true; $output->set($this->key, $input->get($this->key)); foreach ($this->rules as $rule) { $rule->setMessageStack($messageStack); $rule->setParameters($this->key, $this->name); $valid = $rule->isValid($this->key, $input) && $valid; if ($rule->shouldBreakChain()) { return $valid; } } return $valid; }
/** * @inheritdoc * * @param string $key * @param Container $input * @return bool */ public function isValid($key, Container $input) { $this->input = $input; return $this->validate($input->get($key)); }