Valider les données — Formation Symfony 7

Dans ce chapitre je vous propose de découvrir la validation des données dans le cadre d’une application Symfony. La validation va se faire au travers d’attributs que l’on va pouvoir placer sur nos entités et nos différents modèles et qui permettront de définir ce qui constitue une structure valide. Ces attributs seront automatiquement lus par le composant formulaire et permettront de vérifier si les données qui ont été postées par l’utilisateur sont justes.

<?php
namespace App\Entity;

use Symfony\Component\Validator\Constraints as Assert;
use Doctrine\ORM\Mapping as ORM;

class Recipe
{

    #[ORM\Column(length: 255)]
    #[Assert\Length(min: 5)]
    private string $title="";

    #[ORM\Column(length: 255)]
    #[Assert\Length(min: 5)]
    #[Assert\Regex('/^[a-z0-9]+(?:-[a-z0-9]+)*$/', message: 'Invalid slug')]
    private string $slug = '';

    // ...
}

Il sera aussi possible d’utiliser le composant de validation de manière isolée pour valider des données dans un contexte autre que celui du formulaire.

Pour créer une contrainte personnalisée vous pouvez utiliser la commande

php bin/console make:validator

Liens utiles