Comparer deux dates avec TWIG

Lors du développement d’un projet, il est fréquent de devoir comparer deux dates. Grâce à TWIG, c’est très pratique de manipuler les objets mais aussi d’en faire autant avec les dates, et ceci sensiblement de la même manière qu’avec PHP et sa fonction date();

Voici la syntaxe TWIG à utiliser dans un template :

{% if "now"|date('Ymd')  > evenement.date|date('Ymd') %}
   Mon évènement est terminé
{% else %}
   Mon évènement est à venir / en cours
{% endif %}

Attention à bien vérifier l’ordre ‘Ymd’ comme paramètre de date(), en étant étourdi on arrive vite à des résultats improbables : 20121005 (YearMonthDay) n’est pas égal à 05102012 (DayMonthYear).

De même que date(‘Ymd’) n’est pas égal à date(‘Y m d’).