/** * Get error messages from the input filter * * @author Stoyan Rangelov * @param \Zend\InputFilter\InputFilter $filter * @return array */ public function getErrorMessages(\Zend\InputFilter\InputFilter $filter) { $errorMessages = array(); foreach ($filter->getInvalidInput() as $error) { foreach ($error->getMessages() as $key => $value) { $errorMessages[$error->getName()][$error->getName() . ucfirst($key)] = $value; } } $result = array(); $result['status_code'] = 400; $result['error_messages'] = $errorMessages; return $result; }
/** * Retrieve error messages from input filter. * * If the specific input object generating the message is tied to a Field, * we will prefix the field's label to the error message to make it easier * to understand. * * @return array */ public function getErrorsFromInputFilter() { $errors = array(); foreach ($this->inputFilter->getInvalidInput() as $id => $error) { foreach ($error->getMessages() as $message) { if (!$this->fields->has($id)) { $errors[] = $message; } else { $field = $this->fields->get($id); $this->fieldsWithErrors[] = $field->getControlName(); $errors[] = $field->getLabel() . ': ' . $message; } } } return $errors; }