In Zend Framework 2, if you define your input filter via configuration, then you can override validation messages using a format along the lines of:
<validators> <notEmpty> <messages> <isEmpty>Please provide your telephone number</isEmpty> </messages> </notEmpty> </validators>
Setting the message is easy enough, once you have the correct key name. This is a list of all the keys for the standard validators:
Validator | Key name | Default message |
---|---|---|
Alnum | alnumInvalid | Invalid type given. String, integer or float expected |
Alnum | notAlnum | The input contains characters which are non alphabetic and no digits |
Alnum | alnumStringEmpty | The input is an empty string |
Alpha | alphaInvalid | Invalid type given. String expected |
Alpha | notAlpha | The input contains non alphabetic characters |
Alpha | alphaStringEmpty | The input is an empty string |
Barcode | barcodeInvalid | Invalid type given. String expected |
Barcode | barcodeFailed | The input failed checksum validation |
Barcode | barcodeInvalidChars | The input contains invalid characters |
Barcode | barcodeInvalidLength | The input should have a length of %length% characters |
Between | notBetween | The input is not between '%min%' and '%max%', inclusively |
Between | notBetweenStrict | The input is not strictly between '%min%' and '%max%' |
Bitwise | notAnd | The input has no common bit set with '%control%' |
Bitwise | notAndStrict | The input doesn't have the same bits set as '%control%' |
Bitwise | notXor | The input has common bit set with '%control%' |
Callback | callbackInvalid | An exception has been raised within the callback |
Callback | callbackValue | The input is not valid |
CreditCard | creditcardChecksum | The input seems to contain an invalid checksum |
CreditCard | creditcardContent | The input must contain only digits |
CreditCard | creditcardInvalid | Invalid type given. String expected |
CreditCard | creditcardLength | The input contains an invalid amount of digits |
CreditCard | creditcardPrefix | The input is not from an allowed institute |
CreditCard | creditcardService | The input seems to be an invalid credit card number |
CreditCard | creditcardServiceFailure | An exception has been raised while validating the input |
Csrf | notSame | The form submitted did not originate from the expected site |
Date | dateInvalid | Invalid type given. String, integer, array or DateTime expected |
Date | dateInvalidDate | The input does not appear to be a valid date |
Date | dateFalseFormat | The input does not fit the date format '%format%' |
DateStep | dateInvalid | Invalid type given. String, integer, array or DateTime expected |
DateStep | dateInvalidDate | The input does not appear to be a valid date |
DateStep | dateFalseFormat | The input does not fit the date format '%format%' |
DateStep | dateStepNotStep | The input is not a valid step |
DateTime | datetimeInvalid | Invalid type given. String expected |
DateTime | datetimeInvalidDateTime | The input does not appear to be a valid datetime |
Digits | notDigits | The input must contain only digits |
Digits | digitsStringEmpty | The input is an empty string |
Digits | digitsInvalid | Invalid type given. String, integer or float expected |
EmailAddress | emailAddressInvalid | Invalid type given. String expected |
EmailAddress | emailAddressInvalidFormat | The input is not a valid email address. Use the basic format local-part@hostname |
EmailAddress | emailAddressInvalidHostname | '%hostname%' is not a valid hostname for the email address |
EmailAddress | emailAddressInvalidMxRecord | '%hostname%' does not appear to have any valid MX or A records for the email address |
EmailAddress | emailAddressInvalidSegment | '%hostname%' is not in a routable network segment. The email address should not be resolved from public network |
EmailAddress | emailAddressDotAtom | '%localPart%' can not be matched against dot-atom format |
EmailAddress | emailAddressQuotedString | '%localPart%' can not be matched against quoted-string format |
EmailAddress | emailAddressInvalidLocalPart | '%localPart%' is not a valid local part for the email address |
EmailAddress | emailAddressLengthExceeded | The input exceeds the allowed length |
Explode | explodeInvalid | Invalid type given |
Float | floatInvalid | Invalid type given. String, integer or float expected (Deprecated from ZF 2.4) |
Float | notFloat | The input does not appear to be a float (Deprecated from ZF 2.4) |
GreaterThan | notGreaterThan | The input is not greater than '%min%' |
GreaterThan | notGreaterThanInclusive | The input is not greater or equal than '%min%' |
Hex | hexInvalid | Invalid type given. String expected |
Hex | notHex | The input contains non-hexadecimal characters |
Hostname | hostnameCannotDecodePunycode | The input appears to be a DNS hostname but the given punycode notation cannot be decoded |
Hostname | hostnameInvalid | Invalid type given. String expected |
Hostname | hostnameDashCharacter | The input appears to be a DNS hostname but contains a dash in an invalid position |
Hostname | hostnameInvalidHostname | The input does not match the expected structure for a DNS hostname |
Hostname | hostnameInvalidHostnameSchema | The input appears to be a DNS hostname but cannot match against hostname schema for TLD '%tld%' |
Hostname | hostnameInvalidLocalName | The input does not appear to be a valid local network name |
Hostname | hostnameInvalidUri | The input does not appear to be a valid URI hostname |
Hostname | hostnameIpAddressNotAllowed | The input appears to be an IP address, but IP addresses are not allowed |
Hostname | hostnameLocalNameNotAllowed | The input appears to be a local network name but local network names are not allowed |
Hostname | hostnameUndecipherableTld | The input appears to be a DNS hostname but cannot extract TLD part |
Hostname | hostnameUnknownTld | The input appears to be a DNS hostname but cannot match TLD against known list |
Iban | ibanNotSupported | Unknown country within the IBAN |
Iban | ibanSepaNotSupported | Countries outside the Single Euro Payments Area (SEPA) are not supported |
Iban | ibanFalseFormat | The input has a false IBAN format |
Iban | ibanCheckFailed | The input has failed the IBAN check |
Identical | notSame | The two given tokens do not match |
Identical | missingToken | No token was provided to match against |
InArray | notInArray | The input was not found in the haystack |
Int | intInvalid | Invalid type given. String or integer expected (Deprecated from ZF 2.4) |
Int | notInt | The input does not appear to be an integer (Deprecated from ZF 2.4) |
Ip | ipInvalid | Invalid type given. String expected |
Ip | notIpAddress | The input does not appear to be a valid IP address |
Isbn | isbnInvalid | Invalid type given. String or integer expected |
Isbn | isbnNoIsbn | The input is not a valid ISBN number |
IsInstanceOf | notInstanceOf | The input is not an instance of '%className%' |
IsFloat | floatInvalid | Invalid type given. String, integer or float expected (From ZF 2.4) |
IsFloat | notFloat | The input does not appear to be a float (From ZF 2.4) |
IsInt | intInvalid | Invalid type given. String or integer expected (From ZF 2.4) |
IsInt | notInt | The input does not appear to be an integer (From ZF 2.4) |
LessThan | notLessThan | The input is not less than '%max%' |
LessThan | notLessThanInclusive | The input is not less or equal than '%max%' |
NotEmpty | notEmptyInvalid | Value is required and can't be empty |
NotEmpty | isEmpty | Invalid type given. String, integer, float, boolean or array expected |
PhoneNumber | phoneNumberNoMatch | The input does not match a phone number format |
PhoneNumber | phoneNumberUnsupported | The country provided is currently unsupported |
PhoneNumber | phoneNumberInvalid | Invalid type given. String expected |
PostCode | postcodeInvalid | Invalid type given. String or integer expected |
PostCode | postcodeNoMatch | The input does not appear to be a postal code |
PostCode | postcodeService | The input does not appear to be a postal code |
PostCode | postcodeServiceFailure | An exception has been raised while validating the input |
Regex | regexInvalid | Invalid type given. String, integer or float expected |
Regex | regexNotMatch | The input does not match against pattern '%pattern%' |
Regex | regexErrorous | There was an internal error while using the pattern '%pattern%' |
Step | typeInvalid | Invalid value given. Scalar expected |
Step | stepInvalid | The input is not a valid step |
StringLength | stringLengthInvalid | Invalid type given. String expected |
StringLength | stringLengthTooShort | The input is less than %min% characters long |
StringLength | stringLengthTooLong | The input is more than %max% characters long |
Uri | uriInvalid | Invalid type given. String expected |
Uri | notUri | The input does not appear to be a valid Uri |