⊗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ščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Мы выкарыстоўваем cookie для працы сайта, аналітыкі і персаналізацыі. Апрацоўка дадзеных адбываецца згодна Палітыкай канфідэнцыяльнасці.
прыняць усе наладзіць адхіліць