⊗ppSpOtLO 74 of 83 menu

PHP-da Siklik Operatsiyalarni Optimallashtirish

Hatto engil operatsiya ham, sikl ichida qayta-qayta takrorlansa, ko'p resurslarni talab qilishi mumkin.

Keling, buni misol orqali ko'rib chiqaylik. Faraz qilaylik, bizda quyidagi massiv mavjud:

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

Keling, ushbu massiv elementlarining o'rtacha qiymatini topaylik. Buning uchun elementlar yig'indisini topib, uni ular soniga bo'lish kerak. Faraz qilaylik, ma'lum bir dasturchi bu masalani quyidagicha yechgan:

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

Keling, bunday yechimning muammolarini ko'rib chiqaylik. Texnik jihatdan kod to'g'ri ishlaydi va to'g'ri javob beradi. Masala shundaki, matematik jihatdan ham butun yig'indini songa bo'lish, ham har bir qo'shiluvchini alohida-alohida songa bo'lish to'g'ri hisoblanadi.

Biroq, boshqa muammo paydo bo'ladi. Masala shundaki, biz bo'lish amalini massivimizdagi elementlar soni chaqalog'ida bajaramiz. Va shunday bo'lib qoladiki, biz ko'p miqdorda ortiqcha operatsiyalarni bajaramiz, chunki bo'lish amalini oxirida - faqat bir marta, topilgan butun yig'indini bo'lish orqali bajarish mumkin edi.

Keling, kodimizni optimallashtiramiz:

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

Quyida keltirilgan kodni optimallashtiring:

<?php for ($i = 1; $i <= 31; $i++) { if ($i === date('d')) { echo "<b>$i</b><br>"; } if ($i !== date('d')) { echo "$i<br>"; } } ?>
Oʻzbek
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекTiếng Việt
Biz sayt ishlashi, tahlil qilish va shaxsiylashtirish uchun cookie-fayllardan foydalanamiz. Ma'lumotlarni qayta ishlash Maxfiylik siyosatiga muvofiq amalga oshiriladi.
hammasini qabul qilish sozlash rad etish