Doctrine dispose d’événements qui permettent de mettre à jour des champs automatique au moment de l’insertion, de la mise à jour, suppression, chargement.
La liste des événements et leurs utilisations est disponible ici. Ci-dessous un petit exemple :
/** @PrePersist */ public function onPrePersist() { $this->setPrenom('toto'); }
L’annotation permet de lancer la fonction onPrePersist() qui va modifier le prenom à l’ajout dans la base de données. Pour utiliser les événements, pensez à ajouter sur votre entité l’annotation ci-dessous et d’importer les use nécessaires.
@HasLifecycleCallbacks