10000 merged branch Partugal/patch-guesser-perfomance (PR #5298) · symfony/symfony@ef29276 · GitHub
[go: up one dir, main page]

Skip to content

Commit ef29276

Browse files
committed
merged branch Partugal/patch-guesser-perfomance (PR #5298)
Commits ------- 630d16b small optimization Discussion ---------- [Form] Guesser perfomance speedup depends on count of guesses on my tests is 2,4 and 6 x faster for 5, 10 and 20 guesses
2 parents 7fe18d1 + 630d16b commit ef29276

File tree

1 file changed

+10
-4
lines changed

1 file changed

+10
-4
lines changed

src/Symfony/Component/Form/Guess/Guess.php

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -79,11 +79,17 @@ abstract class Guess
7979
*/
8080
public static function getBestGuess(array $guesses)
8181
{
82-
usort($guesses, function ($a, $b) {
83-
return $b->getConfidence() - $a->getConfidence();
84-
});
82+
$result = null;
83+
$maxConfidence = -1;
8584

86-
return count($guesses) > 0 ? $guesses[0] : null;
85+
foreach ($guesses as $guess) {
86+
if ($maxConfidence < $confidence = $guess->getConfidence()) {
87+
$maxConfidence = $confidence;
88+
$result = $guess;
89+
}
90+
}
91+
92+
return $result;
8793
}
8894

8995
/**

0 commit comments

Comments
 (0)
0