diff --git a/src/Symfony/Component/Validator/Constraints/CharsetValidator.php b/src/Symfony/Component/Validator/Constraints/CharsetValidator.php index 3e5de79d2eb48..5cde6ae90fd96 100644 --- a/src/Symfony/Component/Validator/Constraints/CharsetValidator.php +++ b/src/Symfony/Component/Validator/Constraints/CharsetValidator.php @@ -35,9 +35,9 @@ public function validate(mixed $value, Constraint $constraint): void throw new UnexpectedValueException($value, 'string'); } - if (!\in_array($detected = mb_detect_encoding($value, $constraint->encodings, true), (array) $constraint->encodings, true)) { + if (!\in_array(mb_detect_encoding($value, $constraint->encodings, true), (array) $constraint->encodings, true)) { $this->context->buildViolation($constraint->message) - ->setParameter('{{ detected }}', $detected) + ->setParameter('{{ detected }}', mb_detect_encoding($value, strict: true)) ->setParameter('{{ encodings }}', implode(', ', $constraint->encodings)) ->setCode(Charset::BAD_ENCODING_ERROR) ->addViolation(); diff --git a/src/Symfony/Component/Validator/Tests/Constraints/CharsetValidatorTest.php b/src/Symfony/Component/Validator/Tests/Constraints/CharsetValidatorTest.php index 76470b9370dee..88998dcdbcad0 100644 --- a/src/Symfony/Component/Validator/Tests/Constraints/CharsetValidatorTest.php +++ b/src/Symfony/Component/Validator/Tests/Constraints/CharsetValidatorTest.php @@ -42,7 +42,7 @@ public function testInvalidValues(string $value, array $encodings) $this->validator->validate($value, new Charset(encodings: $encodings)); $this->buildViolation('The detected character encoding is invalid ({{ detected }}). Allowed encodings are {{ encodings }}.') - ->setParameter('{{ detected }}', mb_detect_encoding($value, $encodings, true)) + ->setParameter('{{ detected }}', 'UTF-8') ->setParameter('{{ encodings }}', implode(', ', $encodings)) ->setCode(Charset::BAD_ENCODING_ERROR) ->assertRaised();