Closed
Description
Symfony version(s) affected: 4.1.6
Description
If I'm not mistaken, DateTimeNormalizer ignores format when denormalize
How to reproduce
<?php
require_once __DIR__.'/vendor/autoload.php';
use Symfony\Component\Serializer\Normalizer\DateTimeNormalizer;
$format = 'd/m/Y';
$string = '01/10/2018';
$dateTimeNormalizer = new DateTimeNormalizer($format);
$date = \DateTime::createFromFormat($format, $string);
// Normalize OK, shows '01/10/2018'
var_dump($dateTimeNormalizer->normalize($date));
$date2 = $dateTimeNormalizer->denormalize($date->format($format),\DateTime::class);
// Denormalize KO, shows '10/01/2018' instead of '01/10/2018'
// when day is gretter than 12, this throw an PHP Fatal error
var_dump($date2->format($format));
Possible Solution
Use the format attribute of class DateTimeNormalizer in the denormalize method (line 79)
Additional context