Biblioteca gratuita para validar datos con PHP

Validation es, probablemente, una de las bibliotecas más completas a la hora de validar datos con PHP. En ella van a encontrar mecanismos para validar prácticamente cualquier tipo de entrada: un numero telefónico, un tipo de dato, máximos y mínimos, arreglos y muchísimo más.

Validation se instala tanto de forma manual como por medio de un gestor de paquetes, por ejemplo su instalación mediante composer se realiza con tan solo una linea de comandos:

composer require respect/validation

El paquete se encuentra disponible en packagist.org para que lo descarguen con cualquier gestor de bibliotecas compatible con PSR-4.

validar datos con PHP

Validar datos con PHP

Utilizar esta biblioteca es tan simple como importar el namespace a nuestro proyecto:

use Respect\Validation\Validator as v;

Luego simplemente invocamos el objeto según sea necesario, por ejemplo para validar un dato numérico:

$number = 123;
v::numeric()->validate($number); //true

Un aspecto interesante y que lo encuentro diferenciador a otras alternativas, es la posibilidad de validar atributos de objetos de forma sencilla.

Por ejemplo si creamos un objeto y le añadimos unos atributos:

$user = new stdClass;
$user->name = 'Alexandre';
$user->birthdate = '1987-07-01';

Luego podemos validarlos de forma sencilla y en apenas unas lineas de código, todo sin la necesidad de recurrir a complejos mecanismos:

$userValidator = v::attribute('name', v::string()->length(1,32))
                  ->attribute('birthdate', v::date()->minimumAge(18));

$userValidator->validate($user); //true

La documentación es excelente, en ella van a encontrar un completo listado repleto de opciones para validar sus datos de manera sencilla, además de múltiples ejemplos para entender como funciona esta biblioteca de forma rápida y sin complicaciones.

Recuerden que validar y sanear datos son cosas distintas, esta biblioteca es ideal para realizar validaciones. Asimismo, si lo que necesitan es sanear datos no olviden la biblioteca Mr. Clean.

Categorizado en: