⊗ppSpOtLO 74 of 83 menu

Оптимизација цикличних операција у PHP-у

Чак и лагана операција, поновљена много пута у циклусу, може одузети много ресурса.

Хајде да погледамо на примеру. Претпоставимо да нам је дат неки низ:

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

Пронађимо просек елемената овог низа. За то је потребно наћи суму елемената и поделити је са њиховим бројем. Претпоставимо да је неки програмер већ решио овај задатак на следећи начин:

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

Хајде да размотримо проблеме таквог решења. Технички, код ради исправно и даје тачан одговор. Ствар је у томе што је математички тачно како поделити целу суму са бројем елемената, тако и поделити сваки сабирак са бројем.

Међутим, настаје други проблем. Ствар је у томе што ћемо извршавати дељење онолико пута колико има елемената у нашем низу. Испоставља се да радимо велики број непотребних операција, јер смо дељење могли да извршимо на крају — само једном, поделивши целу пронађену суму.

Хајде да оптимизујемо наш код:

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

Оптимизујте код приказан испод:

<?php for ($i = 1; $i <= 31; $i++) { if ($i === date('d')) { echo "<b>$i</b><br>"; } if ($i !== date('d')) { echo "$i<br>"; } } ?>
Српски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј