Clases de Validación Estándar
Zend Framework viene con un conjunto estándar de clases de validación
listas para usar.
Alnum
Devuelve true si y sólo si $valor contiene
caracteres alfanuméricos únicamente.
Este validador incluye una opción para considerar también al espacio
en blanco como caracter válido.
The alphabetic characters mean characters that makes up words in each language.
However, the English alphabet is treated as the alphabetic characters in following languages: Chinese, Japanese, Korean.
The language is specified by Zend_Locale.
Alpha
Devuelve true si y sólo si $valor sólo
contiene caracteres alfabéticos.
Este validador incluye una opción para considerar también al espacio
en blanco como caracter válido.
Barcode
Este validador es instanciado con un tipo de código de barras contra
el valor del código de barras que quiere validar.
En la actualidad acepta los tipos de código de barras "UPC-A"
(Universal Product Code) y "EAN-13" (European Article Number),
además el método isValid() devuelve verdadero si y solo si
la entrada valida satisfactoriamente contra el algoritmo de validación
del código de barras.
Antes de enviar los datos de entrada al validador, debe asegurarse
de eliminar todos los caracteres distintos a los dígitos cero a nueve (0-9).
Between
Devuelve true si y sólo si $valor está entre
los valores límites mínimo y máximo.
La comparación es inclusiva por defecto ($valor puede ser
igual a una valor límite), aunque esto puede ser anulado a fin de
hacer una comparación estricta, donde $valor debe ser
estrictamente mayor al mínimo y estrictamente menor al máximo.
Ccnum
Devuelve true si y sólo si $valor sigue el
algoritmo Luhn (mod-10 checksum) para tarjetas de crédito.
Date
Devuelve true si y sólo si $valor es una
fecha válida en el formato YYYY-MM-DD (AAAA-MM-DD).
Si se usa la opción locale entonces la fecha
será validada de acuerdo a lo establecido para ese lugar.
El formato format es una opción que establece este
formato a ser utilizado para la validación.
Para los detalles acerca de los parámetros opcionales ver en:
Zend_Date::isDate().
Digits
Devuelve true si y sólo si $valor contiene
solamente dígitos.
Float
Returns true if and only if $value is a floating-point value.
Since Zend Framework 1.8 this validator takes into account the actual locale from browser,
environment or application wide set locale. You can of course use the get/setLocale accessors
to change the used locale or give it while creating a instance of this validator.
GreaterThan
Devuelve true si y sólo si $valor es mayor
al límite mínimo.
Hex
Devuelve true si y sólo si $valor contiene
caracteres hexadecimales (0-9 y A-F).
Iban
Returns true if and only if $value contains a valid IBAN
(International Bank Account Number). IBAN numbers are validated against the country where they are
used and by a checksum.
There are two ways to validate IBAN numbers. As first way you can give a locale which represents
a country. Any given IBAN number will then be validated against this country.
isValid($iban)) {
// IBAN appears to be valid
} else {
// IBAN is invalid
foreach ($validator->getMessages() as $message) {
echo "$message\n";
}
}
]]>
This should be done when you want to validate IBAN numbers for a single countries. The simpler way
of validation is not to give a locale like shown in the next example.
isValid($iban)) {
// IBAN appears to be valid
} else {
// IBAN is invalid
}
]]>
But this shows one big problem: When you have to accept only IBAN numbers from one single country,
for example france, then IBAN numbers from other countries would also be valid. Therefor just
remember: When you have to validate a IBAN number against a defined country you should give the
locale. And when you accept all IBAN numbers regardless of any country omit the locale for
simplicity.
InArray
Devuelve true si y sólo si $valor se encuentra
en un array, y si la opción es estricta entonces también verificará
el tipo de dato de $valor.
Int
Returns true if and only if $value is a valid integer.
Since Zend Framework 1.8 this validator takes into account the actual locale from browser,
environment or application wide set locale. You can of course use the get/setLocale accessors
to change the used locale or give it while creating a instance of this validator.
Ip
Devuelve true si y sólo si $valor es una dirección IP válida.
LessThan
Devuelve true si y sólo si $valor es menor
al límite máximo.
NotEmpty
Devuelve true si y sólo si $valor no es vacío.
Regex
Devuelve true si y sólo si $valor coincide
con el patrón de una expresión regular.
StringLength
Devuelve true si y sólo si la longitud del string $valor
es por lo menos un mínimo y no mayor a un máximo
(cuando la opción max no es null).
Desde la versión 1.5.0, el método setMin() lanza una
excepción si la longitud mínima tiene un valor mayor que la longitud
máxima establecida, y el método setMax() lanza una excepción si la
longitud máxima se fija a un valor inferior que la longitud
mínima establecida. Desde la versión 1.0.2, esta clase soporta UTF-8 y a otras
codificaciones, basado en el valor actual de:
iconv.internal_encoding.