⊗ppSpOtLO 74 of 83 menu

Optimizarea operațiilor ciclice în PHP

Chiar și o operație ușoară, repetată de mai multe ori într-o buclă, poate consuma multe resurse.

Să ne uităm la un exemplu. Să presupunem că avem următorul array:

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

Să găsim media elementelor acestui array. Pentru aceasta trebuie să găsim suma elementelor și să o împărțim la numărul lor. Să presupunem că un programator a rezolvat deja această problemă în felul următor:

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

Să analizăm problemele acestei soluții. Din punct de vedere tehnic, codul funcționează corect și oferă răspunsul corect. Motivul este că, din punct de vedere matematic, este corect fie să împărțim întreaga sumă la număr, fie să împărțim fiecare termen la număr.

Cu toate acestea, apare o altă problemă. Ideea este că vom efectua împărțirea de atâtea ori câte elemente sunt în array-ul nostru. Și se dovedește că facem un număr mare de operații inutile, de vreme ce împărțirea ar fi putut fi făcută la final - o singură dată, împărțind întreaga sumă găsită.

Să optimizăm codul nostru:

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

Optimizați codul de mai jos:

<?php for ($i = 1; $i <= 31; $i++) { if ($i === date('d')) { echo "<b>$i</b><br>"; } if ($i !== date('d')) { echo "$i<br>"; } } ?>
Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge