⊗ppSpOtLO 74 of 83 menu

Optimalisatie van cyclische operaties in PHP

Zelfs een lichte operatie, herhaaldelijk uitgevoerd in een lus, kan veel middelen kosten.

Laten we een voorbeeld bekijken. Stel we hebben een bepaalde array:

<?php $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; ?>

Laten we het gemiddelde van de elementen van deze array vinden. Om dit te doen moet de som van de elementen worden gevonden en gedeeld door de hoeveelheid. Stel dat een programmeur dit probleem al heeft opgelost op de volgende manier:

<?php $sum = 0; foreach ($arr as $elem) { $sum += $elem / count($arr); } echo $sum; ?>

Laten we de problemen van zo'n oplossing bekijken. Technisch gezien werkt de code correct en geeft het het juiste antwoord. Het zit zo, dat het wiskundig gezien correct is om zowel de hele som door de hoeveelheid te delen, als om elk van de termen door de hoeveelheid te delen.

Er doet zich echter een ander probleem voor. Het zit zo, dat we de deling zullen uitvoeren zoveel keer als er elementen in onze array zitten. En het blijkt dat we een groot aantal overbodige operaties uitvoeren, terwijl de deling aan het einde had kunnen gebeuren - één keer, door de hele gevonden som te delen.

Laten we onze code optimaliseren:

<?php $sum = 0; foreach ($arr as $elem) { $sum += $elem; } echo $sum / count($arr); ?>

Optimaliseer de onderstaande code:

<?php for ($i = 1; $i <= 31; $i++) { if ($i === date('d')) { echo "<b>$i</b><br>"; } if ($i !== date('d')) { echo "$i<br>"; } } ?>
Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren