Nuevo en Symfony 4.4: Mejorado el validador Type

El validador Type incluido en el componente Validator comprueba que el valor indicado es de un tipo determinado. Este tipo puede ser cualquiera de los tipos válidos en PHP, cualquiera de las funciones ctype de PHP (por ejemplo, alnum, alpha, digit, etc.) y cualquier clase de PHP:

// src/Entity/Author.php
namespace App\Entity;
 
use Symfony\Component\Validator\Constraints as Assert;
 
class Author
{
    /**
     * @Assert\Type("Ramsey\Uuid\UuidInterface")
     */
    protected $id;
 
    /**
     * @Assert\Type("string")
     */
    protected $firstName;
 
    // ...
}

A partir de Symfony 4.4, el tipo también puede ser un array de tipos, para que puedas comprobar que el tipo de un valor es de alguno de los tipos indicados. En el siguiente ejemplo, la propiedad $accessCode puede contener o solo letras o solo números, pero no ambos:

// src/Entity/Author.php
namespace App\Entity;
 
use Symfony\Component\Validator\Constraints as Assert;
 
class Author
{
    // ...
 
    /**
     * @Assert\Type(type={"alpha", "digit"})
     */
    protected $accessCode;
}

Esta funcionalidad fue contribuida por Jan Schädlich en el pull request #31351.

Fuente: New in Symfony 4.4: Improved Type Constraint

Comentarios

Publicada el

14 de octubre de 2019

Etiquetas

Proyectos Symfony destacados

La plataforma de eCommerce 100% Symfony que rivaliza con Magento y PrestaShop. Ver más

Síguenos en @symfony_es para acceder a las últimas noticias.