⊗ppSpOtLO 74 of 83 menu

Optimering av sykliske operasjoner i PHP

Selv en lett operasjon, gjentatt mange ganger i en løkke, kan bruke mye ressurser.

La oss se på et eksempel. La oss si at vi har en gitt array:

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

La oss finne gjennomsnittet av elementene i denne arrayen. For å gjøre dette må du finne summen av elementene og dele den på antallet. La oss si at en programmerer allerede har løst dette problemet på følgende måte:

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

La oss se på problemene med denne løsningen. Teknisk sett fungerer koden riktig og gir riktig svar. Saken er at det matematisk sett er korrekt å dele hele summen på antallet, så vel som å dele hvert enkelt ledd på antallet.

Imidlertid oppstår et annet problem. Saken er at vi vil utføre divisjon like mange ganger som det er elementer i vår array. Og det viser seg at vi gjør et stort antall unødvendige operasjoner, siden divisjonen kunne ha blitt utført til slutt - én gang, ved å dele hele den funnet summen.

La oss optimalisere koden vår:

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

Optimaliser koden nedenfor:

<?php for ($i = 1; $i <= 31; $i++) { if ($i === date('d')) { echo "<b>$i</b><br>"; } if ($i !== date('d')) { echo "$i<br>"; } } ?>
Norsk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruker informasjonskapsler for nettstedets funksjonalitet, analyse og personalisering. Behandling av data foregår i henhold til Personvernerklæringen.
godta alle tilpass avvis