From d5f11e0bde21ae579e2d62488006aa13ff9e1d23 Mon Sep 17 00:00:00 2001 From: Jordane Vaspard Date: Sat, 26 Nov 2022 15:28:56 +0100 Subject: [PATCH] [Form] Call getChoicesForValues() once, to prevent several SQL queries --- .../Component/Form/Extension/Core/Type/ChoiceType.php | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php b/src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php index 2dde39e8af9ef..65692faeb48e8 100644 --- a/src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php +++ b/src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php @@ -144,11 +144,10 @@ public function buildForm(FormBuilderInterface $builder, array $options) } } } else { - foreach ($data as $value) { - if ($choiceList->getChoicesForValues([$value])) { - $knownValues[] = $value; - unset($unknownValues[$value]); - } + foreach ($choiceList->getChoicesForValues($data) as $index => $choice) { + $value = $data[$index]; + $knownValues[] = $value; + unset($unknownValues[$value]); } }