Advent of Code 2020 - 10 enseignements et bonnes pratiques en PHP
jeudi 21 janvier 2021 à 14:02Se passer des « if »
Oui, ... mais non.
Niveau optimisation des actions, c'est pas top.
// avec if
$count = 0;
foreach ($data as $value) {
if ($value === CONTROL_VALUE) {// 1 action
$count++; // 1 action si condition vrai
}
}
// sans if
$count = 0;
foreach ($data as $value) {
$count += (int) ($value === CONTROL_VALUE);// 3 actions quelques soit la valeur de value
/*
+= : 1 action
(int) : 1 action
=== : 1 action
*/
}
Bloquez et cassez vos while
C'est débile les while true. Ça consomme des ressources pour rien.
$block = 0; // 1 action
while (true) { // 1 action
$block++; // 1 action
if ($block > 1000) { // 1 action
break; // 1 action
}
}
3 actions par tour de boucle.
$block = 0; // 1 action
while ($block < 1001) { // 1 action
$block++; // 1 action
}
2 actions par tour de boucle.
— Permalink